Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(84)

Issue 1265013003: Adds support for hittesting points on surface quads (Closed)

Created:
5 years, 4 months ago by lfg
Modified:
5 years, 4 months ago
Reviewers:
jbauman, piman
CC:
cc-bugs_chromium.org, chromium-reviews, danakj+watch_chromium.org, darin-cc_chromium.org, jam, jbauman+watch_chromium.org, kalyank, miu+watch_chromium.org, nona+watch_chromium.org, piman+watch_chromium.org, shuchen+watch_chromium.org, sievers+watch_chromium.org, site-isolation-reviews_chromium.org, James Su, yusukes+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Adds support for hittesting points on surface quads. This is the first patch towards adding support for browser-process quad hittesting. This will be used for out of process iframes as a way to determine which process should receive input events. BUG=491334 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Committed: https://crrev.com/8d07c91d23ae5293087bdd8f6817459f9016a60c Cr-Commit-Position: refs/heads/master@{#342362}

Patch Set 1 #

Patch Set 2 : fixing component build #

Total comments: 12

Patch Set 3 : rebase #

Patch Set 4 : addressing comments #

Patch Set 5 : recursing into RenderPassDrawQuads, checking for clipped_rect, checking for occluded quads #

Total comments: 12

Patch Set 6 : falling back to parent when RenderPass has no hitting quads, referencing passes instead of surfaces #

Patch Set 7 : fixing warnings on windows/android #

Total comments: 2

Patch Set 8 : addressing comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+406 lines, -0 lines) Patch
M cc/BUILD.gn View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M cc/cc.gyp View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M cc/cc_tests.gyp View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M cc/surfaces/BUILD.gn View 1 chunk +2 lines, -0 lines 0 comments Download
A cc/surfaces/surface_hittest.h View 1 2 3 4 5 1 chunk +46 lines, -0 lines 0 comments Download
A cc/surfaces/surface_hittest.cc View 1 2 3 4 5 6 7 1 chunk +151 lines, -0 lines 0 comments Download
A cc/surfaces/surface_hittest_unittest.cc View 1 2 3 4 5 1 chunk +168 lines, -0 lines 0 comments Download
M content/browser/compositor/delegated_frame_host.h View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M content/browser/compositor/delegated_frame_host.cc View 1 2 3 2 chunks +9 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.h View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.cc View 1 2 3 1 chunk +7 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_base.h View 1 2 3 1 chunk +8 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_base.cc View 1 2 3 1 chunk +7 lines, -0 lines 0 comments Download

Messages

Total messages: 25 (7 generated)
lfg
Hi piman, can you take a look? The implementation is based on the design doc ...
5 years, 4 months ago (2015-07-31 19:15:17 UTC) #2
danakj
5 years, 4 months ago (2015-07-31 21:47:28 UTC) #4
jbauman
https://codereview.chromium.org/1265013003/diff/20001/cc/surfaces/surface_hittest.cc File cc/surfaces/surface_hittest.cc (right): https://codereview.chromium.org/1265013003/diff/20001/cc/surfaces/surface_hittest.cc#newcode25 cc/surfaces/surface_hittest.cc:25: const CompositorFrame* surface_frame = surface->GetEligibleFrame(); To avoid infinite recursion, ...
5 years, 4 months ago (2015-07-31 22:00:28 UTC) #5
jbauman
https://codereview.chromium.org/1265013003/diff/20001/cc/surfaces/surface_hittest.h File cc/surfaces/surface_hittest.h (right): https://codereview.chromium.org/1265013003/diff/20001/cc/surfaces/surface_hittest.h#newcode23 cc/surfaces/surface_hittest.h:23: SurfaceId Hittest(SurfaceId surface_id, const gfx::Point& point); You might also ...
5 years, 4 months ago (2015-07-31 22:49:27 UTC) #6
dcheng
Drive-by. https://codereview.chromium.org/1265013003/diff/20001/cc/surfaces/surface_hittest.h File cc/surfaces/surface_hittest.h (right): https://codereview.chromium.org/1265013003/diff/20001/cc/surfaces/surface_hittest.h#newcode26 cc/surfaces/surface_hittest.h:26: SurfaceManager* manager_; Nit: SurfaceManager* const, since it can't ...
5 years, 4 months ago (2015-08-01 00:48:47 UTC) #7
piman
content/ lgtm
5 years, 4 months ago (2015-08-03 22:36:21 UTC) #8
lfg
jbauman@, please take another look. Thanks! https://codereview.chromium.org/1265013003/diff/20001/cc/surfaces/surface_hittest.cc File cc/surfaces/surface_hittest.cc (right): https://codereview.chromium.org/1265013003/diff/20001/cc/surfaces/surface_hittest.cc#newcode25 cc/surfaces/surface_hittest.cc:25: const CompositorFrame* surface_frame ...
5 years, 4 months ago (2015-08-04 21:21:42 UTC) #10
jbauman
On 2015/08/04 21:21:42, lfg wrote: > jbauman@, please take another look. > > Thanks! > ...
5 years, 4 months ago (2015-08-04 21:51:04 UTC) #11
lfg
On 2015/08/04 21:51:04, jbauman wrote: > > It now ignores passes other than the root ...
5 years, 4 months ago (2015-08-05 22:57:12 UTC) #12
jbauman
https://codereview.chromium.org/1265013003/diff/100001/cc/surfaces/surface_hittest.cc File cc/surfaces/surface_hittest.cc (right): https://codereview.chromium.org/1265013003/diff/100001/cc/surfaces/surface_hittest.cc#newcode5 cc/surfaces/surface_hittest.cc:5: #include <iostream> Remove this. https://codereview.chromium.org/1265013003/diff/100001/cc/surfaces/surface_hittest.cc#newcode76 cc/surfaces/surface_hittest.cc:76: (point_in_target_space.x() > quad->shared_quad_state->clip_rect.x() ...
5 years, 4 months ago (2015-08-05 23:33:22 UTC) #13
lfg
Thanks for the quick reviews! I've addressed the comments, please take another look. https://codereview.chromium.org/1265013003/diff/100001/cc/surfaces/surface_hittest.cc File ...
5 years, 4 months ago (2015-08-06 18:28:12 UTC) #14
jbauman
lgtm with one nit. https://codereview.chromium.org/1265013003/diff/140001/cc/surfaces/surface_hittest.cc File cc/surfaces/surface_hittest.cc (right): https://codereview.chromium.org/1265013003/diff/140001/cc/surfaces/surface_hittest.cc#newcode129 cc/surfaces/surface_hittest.cc:129: } Check if quad_render_pass is ...
5 years, 4 months ago (2015-08-06 20:42:19 UTC) #15
lfg
https://codereview.chromium.org/1265013003/diff/140001/cc/surfaces/surface_hittest.cc File cc/surfaces/surface_hittest.cc (right): https://codereview.chromium.org/1265013003/diff/140001/cc/surfaces/surface_hittest.cc#newcode129 cc/surfaces/surface_hittest.cc:129: } On 2015/08/06 20:42:19, jbauman wrote: > Check if ...
5 years, 4 months ago (2015-08-06 22:30:00 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1265013003/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1265013003/160001
5 years, 4 months ago (2015-08-06 23:12:44 UTC) #19
commit-bot: I haz the power
Try jobs failed on following builders: mac_chromium_10.10_rel_ng on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_10.10_rel_ng/builds/2861)
5 years, 4 months ago (2015-08-07 01:59:12 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1265013003/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1265013003/160001
5 years, 4 months ago (2015-08-07 16:07:50 UTC) #23
commit-bot: I haz the power
Committed patchset #8 (id:160001)
5 years, 4 months ago (2015-08-07 16:13:30 UTC) #24
commit-bot: I haz the power
5 years, 4 months ago (2015-08-07 16:14:03 UTC) #25
Message was sent while issue was closed.
Patchset 8 (id:??) landed as
https://crrev.com/8d07c91d23ae5293087bdd8f6817459f9016a60c
Cr-Commit-Position: refs/heads/master@{#342362}

Powered by Google App Engine
This is Rietveld 408576698