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

Issue 1489913003: Handle pointer-events: none in browser process hittesting. (Closed)

Created:
5 years ago by lfg
Modified:
4 years, 11 months ago
CC:
cc-bugs_chromium.org, chromium-reviews, darin-cc_chromium.org, jam
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Handle pointer-events: none in browser process hittesting. This change adds one HittestData structure per surface and a HittestDelegate in RenderWidgetHostInputEventRouter that can reject surfaces based on the HittestData. BUG=491334 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Committed: https://crrev.com/e6119aac120294a5132703363801033bdad6b2f2 Cr-Commit-Position: refs/heads/master@{#371691}

Patch Set 1 #

Patch Set 2 : WIP #

Patch Set 3 : fixing unittests #

Patch Set 4 : fix clang builds #

Patch Set 5 : fixing more unittests #

Patch Set 6 : fixing more stuff #

Patch Set 7 : handling null client+rebase #

Patch Set 8 : fixing mus #

Patch Set 9 : more mandoline fixes #

Patch Set 10 : fixing android webview #

Patch Set 11 : adding test + format #

Patch Set 12 : missing file #

Patch Set 13 : implement piman@'s suggestion #

Total comments: 9

Patch Set 14 : addressing comments #

Patch Set 15 : rebase #

Total comments: 2

Patch Set 16 : rebase again #

Patch Set 17 : fixing gn deps #

Patch Set 18 : fixing compile on linux #

Patch Set 19 : addressing dcheng@'s comments #

Patch Set 20 : fixing tests #

Patch Set 21 : moving hash function #

Patch Set 22 : remove unneeded header #

Total comments: 2

Patch Set 23 : readding header #

Unified diffs Side-by-side diffs Delta from patch set Stats (+235 lines, -13 lines) Patch
M cc/surfaces/surface_hittest_delegate.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +4 lines, -0 lines 0 comments Download
M cc/surfaces/surface_id.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 22 2 chunks +8 lines, -0 lines 0 comments Download
M content/browser/compositor/delegated_frame_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/compositor/delegated_frame_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/renderer_host/render_widget_host_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +2 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +8 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_input_event_router.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3 chunks +25 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_input_event_router.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3 chunks +40 lines, -1 line 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2 chunks +3 lines, -2 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_base.h View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +8 lines, -2 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_base.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.mm View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +3 lines, -2 lines 0 comments Download
M content/browser/site_per_process_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +74 lines, -1 line 0 comments Download
M content/common/frame_messages.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2 chunks +14 lines, -0 lines 0 comments Download
M content/renderer/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/child_frame_compositing_helper.h View 1 2 3 4 5 6 7 8 9 10 11 12 4 chunks +4 lines, -1 line 0 comments Download
M content/renderer/child_frame_compositing_helper.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/render_frame_proxy.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +4 lines, -0 lines 0 comments Download
M content/renderer/render_frame_proxy.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +11 lines, -0 lines 0 comments Download
M content/renderer/render_widget.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +3 lines, -0 lines 0 comments Download
A + content/test/data/frame_tree/page_with_positioned_frame_pointer-events_none.html View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/web/WebRemoteFrameImpl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/WebRemoteFrameImpl.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 2 chunks +7 lines, -0 lines 0 comments Download
M third_party/WebKit/public/web/WebRemoteFrame.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +3 lines, -0 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 34 (11 generated)
lfg
Hi piman@, can you take a look?
4 years, 11 months ago (2016-01-13 18:45:18 UTC) #4
piman
+others, maybe they feel differently. As I mentioned separately, I'm really not excited about combining ...
4 years, 11 months ago (2016-01-13 19:24:00 UTC) #6
danakj
On Wed, Jan 13, 2016 at 11:23 AM, <piman@chromium.org> wrote: > +others, maybe they feel ...
4 years, 11 months ago (2016-01-13 19:29:40 UTC) #7
lfg
On 2016/01/13 19:24:00, piman (Slow to review) wrote: > +others, maybe they feel differently. > ...
4 years, 11 months ago (2016-01-13 21:21:24 UTC) #8
piman
On Wed, Jan 13, 2016 at 1:21 PM, <lfg@chromium.org> wrote: > On 2016/01/13 19:24:00, piman ...
4 years, 11 months ago (2016-01-13 23:02:25 UTC) #9
lfg
On 2016/01/13 23:02:25, piman (Slow to review) wrote: > Well, I disagree on that. Input ...
4 years, 11 months ago (2016-01-15 23:25:54 UTC) #10
piman
This seems pretty reasonable. A few nits, and one fix needed. https://codereview.chromium.org/1489913003/diff/240001/content/browser/renderer_host/render_widget_host_input_event_router.cc File content/browser/renderer_host/render_widget_host_input_event_router.cc (right): ...
4 years, 11 months ago (2016-01-16 01:25:36 UTC) #11
lfg
https://codereview.chromium.org/1489913003/diff/240001/content/browser/renderer_host/render_widget_host_input_event_router.cc File content/browser/renderer_host/render_widget_host_input_event_router.cc (right): https://codereview.chromium.org/1489913003/diff/240001/content/browser/renderer_host/render_widget_host_input_event_router.cc#newcode173 content/browser/renderer_host/render_widget_host_input_event_router.cc:173: if (it == hittest_data_.end()) On 2016/01/16 01:25:36, piman (Slow ...
4 years, 11 months ago (2016-01-18 21:35:20 UTC) #12
piman
lgtm https://codereview.chromium.org/1489913003/diff/240001/content/renderer/render_frame_proxy.cc File content/renderer/render_frame_proxy.cc (right): https://codereview.chromium.org/1489913003/diff/240001/content/renderer/render_frame_proxy.cc#newcode205 content/renderer/render_frame_proxy.cc:205: MESSAGE_DELIVERY_POLICY_WITH_NEXT_SWAP); On 2016/01/18 21:35:20, lfg wrote: > On ...
4 years, 11 months ago (2016-01-20 01:21:19 UTC) #13
lfg
On 2016/01/20 01:21:19, piman (Slow to review) wrote: > I'm not fully sure I understand ...
4 years, 11 months ago (2016-01-20 17:52:52 UTC) #14
lfg
Hi Daniel, can you take a look at the blink changes?
4 years, 11 months ago (2016-01-20 18:14:17 UTC) #16
piman
On Wed, Jan 20, 2016 at 9:52 AM, <lfg@chromium.org> wrote: > On 2016/01/20 01:21:19, piman ...
4 years, 11 months ago (2016-01-20 22:37:39 UTC) #17
dcheng
https://codereview.chromium.org/1489913003/diff/280001/content/renderer/render_frame_proxy.cc File content/renderer/render_frame_proxy.cc (right): https://codereview.chromium.org/1489913003/diff/280001/content/renderer/render_frame_proxy.cc#newcode199 content/renderer/render_frame_proxy.cc:199: if (ChildFrameCompositingHelper* compositing_helper = Just saying: if (compositing_helper_) will ...
4 years, 11 months ago (2016-01-21 23:47:20 UTC) #18
lfg
dcheng@: please take a look. danakj@: Can you take a look at surface_id.h? I had ...
4 years, 11 months ago (2016-01-25 20:29:23 UTC) #20
dcheng
lgtm
4 years, 11 months ago (2016-01-26 00:26:25 UTC) #22
lfg
danakj@: I've switched the hash implementation according to the new style. Please take a look ...
4 years, 11 months ago (2016-01-26 23:40:26 UTC) #23
danakj
cc/ LGTM
4 years, 11 months ago (2016-01-27 00:24:54 UTC) #24
dcheng
https://codereview.chromium.org/1489913003/diff/440001/cc/surfaces/surface_id.h File cc/surfaces/surface_id.h (right): https://codereview.chromium.org/1489913003/diff/440001/cc/surfaces/surface_id.h#newcode38 cc/surfaces/surface_id.h:38: return std::hash<uint64_t>()(key.id); #include <functional>?
4 years, 11 months ago (2016-01-27 00:25:46 UTC) #25
lfg
https://codereview.chromium.org/1489913003/diff/440001/cc/surfaces/surface_id.h File cc/surfaces/surface_id.h (right): https://codereview.chromium.org/1489913003/diff/440001/cc/surfaces/surface_id.h#newcode38 cc/surfaces/surface_id.h:38: return std::hash<uint64_t>()(key.id); On 2016/01/27 00:25:46, dcheng wrote: > #include ...
4 years, 11 months ago (2016-01-27 00:41:02 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1489913003/460001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1489913003/460001
4 years, 11 months ago (2016-01-27 00:45:51 UTC) #29
commit-bot: I haz the power
Committed patchset #23 (id:460001)
4 years, 11 months ago (2016-01-27 02:14:40 UTC) #31
commit-bot: I haz the power
Patchset 23 (id:??) landed as https://crrev.com/e6119aac120294a5132703363801033bdad6b2f2 Cr-Commit-Position: refs/heads/master@{#371691}
4 years, 11 months ago (2016-01-27 02:15:43 UTC) #33
Charlie Reis
4 years, 10 months ago (2016-01-29 00:19:47 UTC) #34
Message was sent while issue was closed.
A revert of this CL (patchset #23 id:460001) has been created in
https://codereview.chromium.org/1643063002/ by creis@chromium.org.

The reason for reverting is: Led to a large spike in renderer crashes in
https://crbug.com/582149.  There's a fix in review
(https://codereview.chromium.org/1648113002/) but it probably won't land in time
for the next canary..

Powered by Google App Engine
This is Rietveld 408576698