Investigate if more work is needed to get touch event handlers in OOPIF. |
||
Issue descriptionThis came up while I was working on splitting WebView/WebWidget. In WebViewImpl::hasTouchEventHandlers (https://cs.chromium.org/chromium/src/third_party/WebKit/Source/web/WebViewImpl.cpp?rcl=1469531834&l=1516), we call out to WebViewClient::hasToucheEventHandlers, which is currently implemented in RenderWidget (https://cs.chromium.org/chromium/src/content/renderer/render_widget.cc?rcl=1469531834&l=1956). WebViewImpl::hasTouchEvenHandlers is called from ChromeClientImpl::setEventListenerProperties (https://cs.chromium.org/chromium/src/third_party/WebKit/Source/web/ChromeClientImpl.cpp?rcl=1469531834&l=876), and is shared by all LocalFrames in the renderer process. Since we can have multiple RenderWidgets in a renderer process, it is not correct to implement hasTouchEvenHandlers for something that should be shared by all LocalFrames. On the other hand, if hasTouchEvenHandlers needs to be implemented separately for every widget, then it shouldn't be shared using the FrameHost for all frames in the renderer process. We need to figure out if hasTouchEventHandlers is something that should be moved from RenderWidget into RenderView, or if we need to do extra work to implement it separately per local root.
,
Mar 13 2017
With https://codereview.chromium.org/2479663002/ and https://codereview.chromium.org/2743223003/ I think we've addressed this. Please re-open if there's something we've missed. |
||
►
Sign in to add a comment |
||
Comment 1 by lfg@chromium.org
, Jul 26 2016