DescriptionRelax 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 #
Messages
Total messages: 15 (0 generated)
|