[Webkit-unassigned] [Bug 196339] [WinCairo][WK2] WebView should call WebPageProxy::setIntrinsicDeviceScaleFactor for high DPI

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Sep 10 00:23:19 PDT 2019


https://bugs.webkit.org/show_bug.cgi?id=196339

--- Comment #16 from Fujii Hironori <Hironori.Fujii at sony.com> ---
I compiled and checked ToT Chromium.
It is using page zoom for device scale factor.
page_zoom_factor is 1.5 in LocalFrame::SetPageAndTextZoomFactors in 1.5 device scale factor display.

Callstack:

> blink_core.dll!blink::LocalFrame::SetPageAndTextZoomFactors(float page_zoom_factor, float text_zoom_factor) Line 768	C++
> blink_core.dll!blink::LocalFrame::SetPageZoomFactor(float factor) Line 740	C++
> blink_core.dll!blink::WebViewImpl::PropagateZoomFactorToLocalFrameRoots(blink::Frame * frame, float zoom_factor) Line 2362	C++
> blink_core.dll!blink::WebViewImpl::SetZoomLevel(double zoom_level) Line 2395	C++
> blink_core.dll!blink::WebViewImpl::SetZoomFactorForDeviceScaleFactor(float zoom_factor_for_device_scale_factor) Line 2493	C++
> content.dll!content::RenderWidget::UpdateWebViewWithDeviceScaleFactor() Line 1969	C++
> content.dll!content::RenderWidget::UpdateSurfaceAndScreenInfo(const viz::LocalSurfaceIdAllocation & new_local_surface_id_allocation, const gfx::Rect & compositor_viewport_pixel_rect, const content::ScreenInfo & new_screen_info) Line 2238	C++
> content.dll!content::RenderWidget::SynchronizeVisualProperties(const content::VisualProperties & visual_properties) Line 1654	C++
> content.dll!content::RenderWidget::OnSynchronizeVisualProperties(const content::VisualProperties & visual_properties_from_browser) Line 896	C++
> content.dll!base::DispatchToMethodImpl<content::RenderWidget *,void (content::RenderWidget::*)(const content::VisualProperties &),std::__1::tuple<content::VisualProperties>,0>(content::RenderWidget * const & obj, void(content::RenderWidget::*)(const content::VisualProperties &) method, std::__1::tuple<content::VisualProperties> && args, std::__1::integer_sequence<unsigned long long,0>) Line 53	C++
> content.dll!base::DispatchToMethod<content::RenderWidget *,void (content::RenderWidget::*)(const content::VisualProperties &),std::__1::tuple<content::VisualProperties> >(content::RenderWidget * const & obj, void(content::RenderWidget::*)(const content::VisualProperties &) method, std::__1::tuple<content::VisualProperties> && args) Line 60	C++
> content.dll!IPC::DispatchToMethod<content::RenderWidget,void (content::RenderWidget::*)(const content::VisualProperties &),void,std::__1::tuple<content::VisualProperties> >(content::RenderWidget * obj, void(content::RenderWidget::*)(const content::VisualProperties &) method, void *, std::__1::tuple<content::VisualProperties> && tuple) Line 51	C++
> content.dll!IPC::MessageT<WidgetMsg_SynchronizeVisualProperties_Meta,std::__1::tuple<content::VisualProperties>,void>::Dispatch<content::RenderWidget,content::RenderWidget,void,void (content::RenderWidget::*)(const content::VisualProperties &)>(const IPC::Message * msg, content::RenderWidget * obj, content::RenderWidget * sender, void * parameter, void(content::RenderWidget::*)(const content::VisualProperties &) func) Line 147	C++
> content.dll!content::RenderWidget::OnMessageReceived(const IPC::Message & message) Line 622	C++
> ipc.dll!IPC::MessageRouter::RouteMessage(const IPC::Message & msg) Line 56	C++
> content.dll!content::ChildThreadImpl::ChildThreadMessageRouter::RouteMessage(const IPC::Message & msg) Line 502	C++
> ipc.dll!IPC::MessageRouter::OnMessageReceived(const IPC::Message & msg) Line 48	C++
> content.dll!content::ChildThreadImpl::OnMessageReceived(const IPC::Message & msg) Line 841	C++
> ipc.dll!IPC::ChannelProxy::Context::OnDispatchMessage(const IPC::Message & message) Line 324	C++
> ipc.dll!base::internal::FunctorTraits<void (IPC::ChannelProxy::Context::*)(const IPC::Message &),void>::Invoke<void (IPC::ChannelProxy::Context::*)(const IPC::Message &),scoped_refptr<IPC::ChannelProxy::Context>,IPC::Message>(void(IPC::ChannelProxy::Context::*)(const IPC::Message &) method, scoped_refptr<IPC::ChannelProxy::Context> && receiver_ptr, IPC::Message && args) Line 499	C++
> ipc.dll!base::internal::InvokeHelper<0,void>::MakeItSo<void (IPC::ChannelProxy::Context::*)(const IPC::Message &),scoped_refptr<IPC::ChannelProxy::Context>,IPC::Message>(void(IPC::ChannelProxy::Context::*)(const IPC::Message &) && functor, scoped_refptr<IPC::ChannelProxy::Context> && args, IPC::Message && args) Line 599	C++
> ipc.dll!base::internal::Invoker<base::internal::BindState<void (IPC::ChannelProxy::Context::*)(const IPC::Message &),scoped_refptr<IPC::ChannelProxy::Context>,IPC::Message>,void ()>::RunImpl<void (IPC::ChannelProxy::Context::*)(const IPC::Message &),std::__1::tuple<scoped_refptr<IPC::ChannelProxy::Context>,IPC::Message>,0,1>(void(IPC::ChannelProxy::Context::*)(const IPC::Message &) && functor, std::__1::tuple<scoped_refptr<IPC::ChannelProxy::Context>,IPC::Message> && bound, std::__1::integer_sequence<unsigned long long,0,1>) Line 672	C++
> ipc.dll!base::internal::Invoker<base::internal::BindState<void (IPC::ChannelProxy::Context::*)(const IPC::Message &),scoped_refptr<IPC::ChannelProxy::Context>,IPC::Message>,void ()>::RunOnce(base::internal::BindStateBase * base) Line 641	C++
> base.dll!base::OnceCallback<void ()>::Run() Line 99	C++
> base.dll!base::TaskAnnotator::RunTask(const char * trace_event_name, base::PendingTask * pending_task) Line 144	C++
> base.dll!base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::sequence_manager::LazyNow * continuation_lazy_now, bool * ran_task) Line 366	C++
> base.dll!base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoSomeWork() Line 221	C++
> base.dll!base::MessagePumpDefault::Run(base::MessagePump::Delegate * delegate) Line 40	C++
> base.dll!base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool application_tasks_allowed, base::TimeDelta timeout) Line 467	C++
> base.dll!base::RunLoop::Run() Line 156	C++
> content.dll!content::RendererMain(const content::MainFunctionParams & parameters) Line 214	C++
> content.dll!content::RunOtherNamedProcessTypeMain(const std::__1::basic_string<char,std::__1::char_traits<char>,std::__1::allocator<char> > & process_type, const content::MainFunctionParams & main_function_params, content::ContentMainDelegate * delegate) Line 581	C++
> content.dll!content::ContentMainRunnerImpl::Run(bool start_service_manager_only) Line 874	C++
> content.dll!content::ContentServiceManagerMainDelegate::RunEmbedderProcess() Line 52	C++
> embedder.dll!service_manager::Main(const service_manager::MainParams & params) Line 423	C++
> content.dll!content::ContentMain(const content::ContentMainParams & params) Line 20	C++
> chrome.dll!ChromeMain(HINSTANCE__ * instance, sandbox::SandboxInterfaceInfo * sandbox_info, __int64 exe_entry_point_ticks) Line 110	C++
> chrome.exe!MainDllLoader::Launch(HINSTANCE__ * instance, base::TimeTicks exe_entry_point_ticks) Line 202	C++
> chrome.exe!wWinMain(HINSTANCE__ * instance, HINSTANCE__ * prev, wchar_t *, int) Line 234	C++
> [External Code]

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20190910/63841de2/attachment.html>


More information about the webkit-unassigned mailing list