Use RootScroller for NonFastScrollableRegions
NonFastScrollableRegions are set on the FrameView's scrolling contents layer in order to let the compositor know about scrollers that aren't composited or need forwarding events to the main thread for some reason. This logic breaks when a non-composited subscroller is placed inside the root scroller. The root scroller is always composited and it becomes the layout/outer viewport in the compositor. This means we never actually check the frame view's scrolling layer for NFSRs since we stop walking up the scroll tree once we've scrolled the viewport. This CL fixes the issue by setting the regions on the root scroller's scrolling contents layer, rather than the FrameView's. GetScrollableArea on the root FrameView will return a RootFrameViewport which returns the layout viewport's scrolling layer. Bug: 954496 Change-Id: Ic6ee4273fe7d34a97c60c48f00d0ba4892295953 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1580219Reviewed-by:Philip Rogers <pdr@chromium.org> Commit-Queue: David Bokan <bokan@chromium.org> Cr-Commit-Position: refs/heads/master@{#654700}
Showing
Please register or sign in to comment