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

Issue 250663003: Relax touch hit testing in CC to look at all layers under a point (Closed)

Created:
6 years, 8 months ago by Rick Byers
Modified:
6 years, 8 months ago
Reviewers:
Ian Vollick
CC:
chromium-reviews, cc-bugs_chromium.org
Visibility:
Public.

Description

Relax touch hit testing in CC to look at all layers under a point CC touch hit testing now (as of http://crrev.com/264395 does a ray cast through all layers under the touched point. We included an optimization to stop searching once you reach a layer we know is opaque to hit testing. This breaks the common case of sites with a touch handler on the document because blink has an optimization to effectively disable touch hit testing in that scenario (since there's no benefit to be had to expensive rect computation) by marking just the entire root layer with a handler region. This change removes this opaque-to-hit-testing optimization. There's some risk that we'll block on main more often, but it should be rare (you'd need a scrolling layer without a handler over top of a layer with a handler). This also fixes the case where a layer has a region that is supposed to be transparent to hit-testing with the CSS pointer-events: none property. BUG=366034, 269598 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=266402

Patch Set 1 #

Patch Set 2 : Add unit test case #

Unified diffs Side-by-side diffs Delta from patch set Stats (+11 lines, -22 lines) Patch
M cc/trees/layer_tree_host_common.cc View 2 chunks +6 lines, -8 lines 0 comments Download
M cc/trees/layer_tree_host_common_unittest.cc View 1 1 chunk +5 lines, -14 lines 0 comments Download

Messages

Total messages: 15 (0 generated)
Rick Byers
Ian, PTAL
6 years, 8 months ago (2014-04-24 19:23:43 UTC) #1
enne (OOO)
Can you add a unit test for the case that was broken?
6 years, 8 months ago (2014-04-24 19:32:11 UTC) #2
Rick Byers
On 2014/04/24 19:32:11, enne wrote: > Can you add a unit test for the case ...
6 years, 8 months ago (2014-04-24 21:07:54 UTC) #3
Ian Vollick
On 2014/04/24 21:07:54, Rick Byers wrote: > On 2014/04/24 19:32:11, enne wrote: > > Can ...
6 years, 8 months ago (2014-04-25 16:07:42 UTC) #4
Ian Vollick
The CQ bit was checked by vollick@chromium.org
6 years, 8 months ago (2014-04-25 16:07:44 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/rbyers@chromium.org/250663003/20001
6 years, 8 months ago (2014-04-25 22:16:11 UTC) #6
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-04-25 23:57:38 UTC) #7
commit-bot: I haz the power
Try jobs failed on following builders: tryserver.chromium on win_chromium_rel
6 years, 8 months ago (2014-04-25 23:57:38 UTC) #8
Rick Byers
The CQ bit was checked by rbyers@chromium.org
6 years, 8 months ago (2014-04-26 00:39:57 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/rbyers@chromium.org/250663003/20001
6 years, 8 months ago (2014-04-26 00:45:24 UTC) #10
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-04-26 04:32:32 UTC) #11
commit-bot: I haz the power
Try jobs failed on following builders: tryserver.chromium on win_chromium_x64_rel
6 years, 8 months ago (2014-04-26 04:32:33 UTC) #12
Ian Vollick
The CQ bit was checked by vollick@chromium.org
6 years, 8 months ago (2014-04-26 09:56:28 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/rbyers@chromium.org/250663003/20001
6 years, 8 months ago (2014-04-26 09:58:10 UTC) #14
commit-bot: I haz the power
6 years, 8 months ago (2014-04-27 00:27:38 UTC) #15
Message was sent while issue was closed.
Change committed as 266402

Powered by Google App Engine
This is Rietveld 408576698