New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 750755 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug


Sign in to add a comment

refactor content to use HitTest host library

Project Member Reported by riajiang@chromium.org, Jul 31 2017

Issue description

(more details here later after looking into *how* to refactor content)
 
Owner: fsam...@chromium.org
We had a discussion about this at the hittest meeting minutes. fsamuel@ can you add a link to the doc here and assign this back to me
Owner: rjkroege@chromium.org
I sent Rob the picture reassigning back.
Blockedon: 755549

Comment 4 by varkha@chromium.org, Aug 15 2017

Blocking: 710016
Blocking: -710016
this refactoring does not block the window server case?
Cc: riajiang@chromium.org
In particular: this bug is to refactor content/browser input routing code to use the HitTestQuery component.
Cc: wjmaclean@chromium.org
Owner: kenrb@chromium.org
Per discussion at meeting: kenrb is picking up.
Blocking: 763452
Cc: jonr...@chromium.org

Comment 10 by sky@chromium.org, Oct 31 2017

Blocking: 780279
Project Member

Comment 11 by bugdroid1@chromium.org, Nov 8 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c

commit ae47550de0dae99d8f5a8f1bba33b94bcc1f399c
Author: Ken Buchanan <kenrb@chromium.org>
Date: Wed Nov 08 15:31:25 2017

Plumb HitTestRegionList through content to CompositorFrameSinkSupport

This patch causes a HitTestRegionListPtr struct pointer (that is
supplied by the renderer process via SubmitCompositorFrame) to the
RenderWidgetHostImpl to be passed along to the
CompositorFrameSinkSupport. When the renderer process starts
generating hit test regions, the browser can use these instead of
compositor Surfaces for determining the target of a given mouse or
touch event.

Viz service hit testing is currently only being developed for Aura
platforms, so the plumbing is currently only through
RenderWidgetHostViews that can be instantiated in Aura.

Bug:  750755 
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_site_isolation
Change-Id: Ic34d73cb2823978bb3473711d4e17d5ef70ac931
Reviewed-on: https://chromium-review.googlesource.com/682878
Commit-Queue: Ken Buchanan <kenrb@chromium.org>
Reviewed-by: Nick Carter <nick@chromium.org>
Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org>
Cr-Commit-Position: refs/heads/master@{#514835}
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/frame_host/render_widget_host_view_guest.cc
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/frame_host/render_widget_host_view_guest.h
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/frame_host/render_widget_host_view_guest_unittest.cc
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/browser_compositor_view_mac.mm
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/delegated_frame_host.cc
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/delegated_frame_host.h
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_impl.cc
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_input_event_router.cc
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_view_android.cc
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_view_android.h
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_view_aura.cc
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_view_aura.h
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_view_aura_unittest.cc
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_view_base.h
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_view_child_frame.cc
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_view_child_frame.h
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_view_child_frame_unittest.cc
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_view_mac.h
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/browser/renderer_host/render_widget_host_view_mac.mm
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/test/test_render_view_host.cc
[modify] https://crrev.com/ae47550de0dae99d8f5a8f1bba33b94bcc1f399c/content/test/test_render_view_host.h

Blocking: 785986
Status: Fixed (was: Assigned)
This might need some tweaks once HitTestRegions are working but it is basically done.
I should add that remaining work will be on issue 780279.
Blocking: 810128
Project Member

Comment 16 by bugdroid1@chromium.org, Feb 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/da06f139b69c861b7d91108e77802dd39d9b3cf0

commit da06f139b69c861b7d91108e77802dd39d9b3cf0
Author: Ria Jiang <riajiang@chromium.org>
Date: Wed Feb 07 22:18:21 2018

Convert event location to be in pixels before asking HitTestQuery.

RenderWidgetHostInputEventRouter operates in DIP but HitTestQuery uses
pixels. Convert event location to be in pixels before asking
HitTestQuery for targeting and convert the transformed location back to
DIP after receiving that from HTQ.

Bug:  750755 
Test: will add along with other browsertests (crbug/810121)
Change-Id: I0561dd9a4ed73bb1c2ede019e9ee09aa33e1e08c
Reviewed-on: https://chromium-review.googlesource.com/907340
Commit-Queue: Ria Jiang <riajiang@chromium.org>
Reviewed-by: Ken Buchanan <kenrb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535163}
[modify] https://crrev.com/da06f139b69c861b7d91108e77802dd39d9b3cf0/content/browser/renderer_host/render_widget_host_input_event_router.cc

Components: -Internals>MUS Internals>Services>WindowService
Project Member

Comment 18 by bugdroid1@chromium.org, Apr 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/79f58ed92b323c4ad28d8de645dcb94f2f7036b4

commit 79f58ed92b323c4ad28d8de645dcb94f2f7036b4
Author: Ria Jiang <riajiang@chromium.org>
Date: Tue Apr 10 03:30:52 2018

Don't send events to another client.

When the target we found is not in the tree of the client |root_view|,
send the event to the |root_view| instead.

Bug:  750755 
Test: content_unittests content_browsertests
https: //ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_rel_ng/38690
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel
Change-Id: I8957c94fe543cc9f659497f781b723ad25e2fa51
Reviewed-on: https://chromium-review.googlesource.com/963857
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org>
Commit-Queue: Ria Jiang <riajiang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#549408}
[modify] https://crrev.com/79f58ed92b323c4ad28d8de645dcb94f2f7036b4/content/browser/renderer_host/render_widget_host_impl.cc
[modify] https://crrev.com/79f58ed92b323c4ad28d8de645dcb94f2f7036b4/content/browser/renderer_host/render_widget_host_input_event_router.cc
[modify] https://crrev.com/79f58ed92b323c4ad28d8de645dcb94f2f7036b4/content/browser/renderer_host/render_widget_host_input_event_router.h
[modify] https://crrev.com/79f58ed92b323c4ad28d8de645dcb94f2f7036b4/content/browser/renderer_host/render_widget_host_input_event_router_unittest.cc
[modify] https://crrev.com/79f58ed92b323c4ad28d8de645dcb94f2f7036b4/content/browser/renderer_host/render_widget_targeter.h
[modify] https://crrev.com/79f58ed92b323c4ad28d8de645dcb94f2f7036b4/content/browser/site_per_process_browsertest.cc
[modify] https://crrev.com/79f58ed92b323c4ad28d8de645dcb94f2f7036b4/content/browser/site_per_process_hit_test_browsertest.cc
[modify] https://crrev.com/79f58ed92b323c4ad28d8de645dcb94f2f7036b4/content/public/test/browser_test_utils.cc
[modify] https://crrev.com/79f58ed92b323c4ad28d8de645dcb94f2f7036b4/content/public/test/browser_test_utils.h
[add] https://crrev.com/79f58ed92b323c4ad28d8de645dcb94f2f7036b4/content/test/data/frame_tree/page_with_two_iframes.html
[modify] https://crrev.com/79f58ed92b323c4ad28d8de645dcb94f2f7036b4/testing/buildbot/filters/viz.content_browsertests.filter

Sign in to add a comment