Reviewers: aelias, jaydasika, tdresser (OOO Sept 26-28)
CL:
https://codereview.chromium.org/2382913003/Message:
Created Revert of Fix scroll chaining for non-descendants of root scroller.
Description:
Revert of Fix scroll chaining for non-descendants of root scroller. (patchset #4
id:60001 of
https://codereview.chromium.org/2365793002/ )
Reason for revert:
Broke WebView scrolling. See
crbug.com/651515Original issue's description:
> Fix scroll chaining for non-descendants of root scroller.
>
> This CL fixes the scroll chaining behavior for elements that aren't
descendants
> of the root scroller element. This can only happen in the non-document root
> scroller proposal.
>
> On the main thread scrolling path, we were previously assuming that all
scrolls
> would chain through the effective root scroller. This CL fixes the terminating
> condition as well as removes an invalid DCHECK.
>
> On the compositor side, the chaining mechanisms would previously use the inner
> viewport scroll layer to designate viewport scrolling. Further on, we would
> explicitly check for the inner viewport layer and scroll using cc::Viewport.
> When scrolling a non-descendant of the root scroller, we chain up to the inner
> viewport scroll layer without going through the outer viewport. Scrolling
> cc::Viewport causes scrolling in the outer viewport though so we would scroll
> it inadvertaintly. I've made changes so that we use the outer viewport to
> designate cc::Viewport scrolling. Scrolls will terminate at the outer viewport
> scroll layer, but they don't have to chain through it.
>
> Unrelated, but I also removed LayerImpl::ApplyScroll as it's unused.
>
> BUG=505516
> CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
>
> Committed:
https://crrev.com/bc48cb30d9e473b693dc996b7750510d05d50f69> Cr-Commit-Position: refs/heads/master@{#420763}
TBR=ael...@chromium.org,jayd...@chromium.org,tdre...@chromium.org# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=505516
Affected files (+67, -361 lines):
M cc/layers/layer_impl.h
M cc/layers/layer_impl.cc
M cc/trees/layer_tree_host_impl.cc
M cc/trees/layer_tree_host_impl_unittest.cc
D third_party/WebKit/LayoutTests/fast/scrolling/scroll-non-descendant-of-root-scroller.html
M third_party/WebKit/Source/core/input/ScrollManager.cpp