| Index: third_party/WebKit/Source/core/page/scrolling/TopDocumentRootScrollerController.cpp
|
| diff --git a/third_party/WebKit/Source/core/page/scrolling/TopDocumentRootScrollerController.cpp b/third_party/WebKit/Source/core/page/scrolling/TopDocumentRootScrollerController.cpp
|
| index bb4678bd4c97637523f0ed2c4364401b3b39f0df..beb0947540e0a1720e831276368cfd356c1d0379 100644
|
| --- a/third_party/WebKit/Source/core/page/scrolling/TopDocumentRootScrollerController.cpp
|
| +++ b/third_party/WebKit/Source/core/page/scrolling/TopDocumentRootScrollerController.cpp
|
| @@ -114,6 +114,11 @@ void TopDocumentRootScrollerController::recomputeGlobalRootScroller() {
|
| // changes.
|
| setNeedsCompositingInputsUpdateOnGlobalRootScroller();
|
|
|
| + ScrollableArea* oldRootScrollerArea =
|
| + m_globalRootScroller
|
| + ? RootScrollerUtil::scrollableAreaFor(*m_globalRootScroller.get())
|
| + : nullptr;
|
| +
|
| m_globalRootScroller = target;
|
|
|
| setNeedsCompositingInputsUpdateOnGlobalRootScroller();
|
| @@ -124,6 +129,13 @@ void TopDocumentRootScrollerController::recomputeGlobalRootScroller() {
|
| // ViewportScrollCallback to swap the target into the layout viewport
|
| // in RootFrameViewport.
|
| m_viewportApplyScroll->setScroller(targetScroller);
|
| +
|
| + // The scrollers may need to stop using their own scrollbars as Android
|
| + // Chrome's VisualViewport provides the scrollbars for the root scroller.
|
| + if (oldRootScrollerArea)
|
| + oldRootScrollerArea->didChangeGlobalRootScroller();
|
| +
|
| + targetScroller->didChangeGlobalRootScroller();
|
| }
|
|
|
| Document* TopDocumentRootScrollerController::topDocument() const {
|
|
|