Chromium Code Reviews
DescriptionRefactor unreliable hit test code to avoid owning_layers
In [1] we switched the unreliable hit test code from using ScrollNode's
owning_layer to using the ScrollTree's layer_id_to_scroll_node_index.
This patch improves on [1] to not use layer_id_to_scroll_node_index
either, which turned out to be owning_layer in disguise.
The existing IsClosestScrollAncestor code has been refactored into a
helper (IsInitialScrollHitTestReliable) that makes the main thread
fallback cases more obvious (see: [2,3]). A test has been added for
the failure case noticed by Ali Juma in [1] where a drawn scrollbar
is the child of a scrolling layer but itself does not scroll.
[1] https://codereview.chromium.org/2702143002
[2] https://codereview.chromium.org/238803005
[3] https://codereview.chromium.org/1878323002
BUG=693740
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel
Review-Url: https://codereview.chromium.org/2718833002
Cr-Commit-Position: refs/heads/master@{#453462}
Committed: https://chromium.googlesource.com/chromium/src/+/47fcc62bde25cb7275e56c3b256c0d0dc75aefaa
Patch Set 1 #Patch Set 2 : Fix mistake in HitTestVisibleScrollableOrTouchableFunctor, cleaup comments #
Total comments: 8
Patch Set 3 : Fix bug when directly hitting a drawn scrollbar #
Messages
Total messages: 28 (16 generated)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||