| Index: third_party/WebKit/Source/web/tests/RootScrollerTest.cpp
|
| diff --git a/third_party/WebKit/Source/web/tests/RootScrollerTest.cpp b/third_party/WebKit/Source/web/tests/RootScrollerTest.cpp
|
| index a90ecc8c0ea6a2658ec4c3f9073bf82cbcba5a3c..42fcf98e97e3b24638cc5ee808dfcaba1355e564 100644
|
| --- a/third_party/WebKit/Source/web/tests/RootScrollerTest.cpp
|
| +++ b/third_party/WebKit/Source/web/tests/RootScrollerTest.cpp
|
| @@ -742,128 +742,6 @@ TEST_F(RootScrollerTest, RemoteMainFrame) {
|
| m_helper.reset();
|
| }
|
|
|
| -// Tests that the clipping layer is resized on the root scroller element even
|
| -// if the layout height doesn't change.
|
| -TEST_F(RootScrollerTest, BrowserControlsResizeClippingLayer) {
|
| - bool oldInertTopControls = RuntimeEnabledFeatures::inertTopControlsEnabled();
|
| - RuntimeEnabledFeatures::setInertTopControlsEnabled(true);
|
| -
|
| - initialize("root-scroller.html");
|
| - Element* container = mainFrame()->document()->getElementById("container");
|
| -
|
| - {
|
| - NonThrowableExceptionState exceptionState;
|
| - mainFrame()->document()->setRootScroller(container, exceptionState);
|
| -
|
| - mainFrameView()->updateAllLifecyclePhases();
|
| - ASSERT_EQ(toLayoutBox(container->layoutObject())->clientHeight(), 400);
|
| -
|
| - GraphicsLayer* clipLayer = toLayoutBox(container->layoutObject())
|
| - ->layer()
|
| - ->compositedLayerMapping()
|
| - ->scrollingLayer();
|
| - ASSERT_EQ(clipLayer->size().height(), 400);
|
| - }
|
| -
|
| - {
|
| - webViewImpl()->handleInputEvent(
|
| - generateTouchGestureEvent(WebInputEvent::GestureScrollBegin));
|
| -
|
| - // Scrolling over the #container DIV should cause the browser controls to
|
| - // hide.
|
| - EXPECT_FLOAT_EQ(1, browserControls().shownRatio());
|
| - webViewImpl()->handleInputEvent(generateTouchGestureEvent(
|
| - WebInputEvent::GestureScrollUpdate, 0, -browserControls().height()));
|
| - EXPECT_FLOAT_EQ(0, browserControls().shownRatio());
|
| -
|
| - webViewImpl()->handleInputEvent(
|
| - generateTouchGestureEvent(WebInputEvent::GestureScrollEnd));
|
| -
|
| - webViewImpl()->resizeWithBrowserControls(IntSize(400, 450), 50, false);
|
| -
|
| - EXPECT_FALSE(container->layoutObject()->needsLayout());
|
| -
|
| - mainFrameView()->updateAllLifecyclePhases();
|
| -
|
| - // Since inert top controls are enabled, the container should not have
|
| - // resized, however, the clip layer should.
|
| - EXPECT_EQ(toLayoutBox(container->layoutObject())->clientHeight(), 400);
|
| - GraphicsLayer* clipLayer = toLayoutBox(container->layoutObject())
|
| - ->layer()
|
| - ->compositedLayerMapping()
|
| - ->scrollingLayer();
|
| - EXPECT_EQ(clipLayer->size().height(), 450);
|
| - }
|
| -
|
| - RuntimeEnabledFeatures::setInertTopControlsEnabled(oldInertTopControls);
|
| -}
|
| -
|
| -// Tests that the clipping layer is resized on the root scroller element when
|
| -// it's an iframe and even if the layout height doesn't change.
|
| -TEST_F(RootScrollerTest, BrowserControlsResizeClippingLayerIFrame) {
|
| - bool oldInertTopControls = RuntimeEnabledFeatures::inertTopControlsEnabled();
|
| - RuntimeEnabledFeatures::setInertTopControlsEnabled(true);
|
| -
|
| - initialize("root-scroller-iframe.html");
|
| -
|
| - Element* iframe = mainFrame()->document()->getElementById("iframe");
|
| - LocalFrame* childFrame =
|
| - toLocalFrame(toHTMLFrameOwnerElement(iframe)->contentFrame());
|
| -
|
| - PaintLayerCompositor* childPLC =
|
| - childFrame->view()->layoutViewItem().compositor();
|
| -
|
| - // Give the iframe itself scrollable content and make it the root scroller.
|
| - {
|
| - NonThrowableExceptionState nonThrow;
|
| - mainFrame()->document()->setRootScroller(iframe, nonThrow);
|
| -
|
| - WebLocalFrame* childWebFrame =
|
| - mainWebFrame()->firstChild()->toWebLocalFrame();
|
| - executeScript(
|
| - "document.getElementById('container').style.width = '300%';"
|
| - "document.getElementById('container').style.height = '300%';",
|
| - *childWebFrame);
|
| -
|
| - mainFrameView()->updateAllLifecyclePhases();
|
| -
|
| - // Some sanity checks to make sure the test is setup correctly.
|
| - ASSERT_EQ(childFrame->view()->visibleContentSize().height(), 400);
|
| - ASSERT_EQ(childPLC->containerLayer()->size().height(), 400);
|
| - ASSERT_EQ(childPLC->rootGraphicsLayer()->size().height(), 400);
|
| - }
|
| -
|
| - {
|
| - webViewImpl()->handleInputEvent(
|
| - generateTouchGestureEvent(WebInputEvent::GestureScrollBegin));
|
| -
|
| - // Scrolling over the #container DIV should cause the browser controls to
|
| - // hide.
|
| - EXPECT_FLOAT_EQ(1, browserControls().shownRatio());
|
| - webViewImpl()->handleInputEvent(generateTouchGestureEvent(
|
| - WebInputEvent::GestureScrollUpdate, 0, -browserControls().height()));
|
| - EXPECT_FLOAT_EQ(0, browserControls().shownRatio());
|
| -
|
| - webViewImpl()->handleInputEvent(
|
| - generateTouchGestureEvent(WebInputEvent::GestureScrollEnd));
|
| -
|
| - webViewImpl()->resizeWithBrowserControls(IntSize(400, 450), 50, false);
|
| -
|
| - EXPECT_FALSE(childFrame->view()->needsLayout());
|
| -
|
| - mainFrameView()->updateAllLifecyclePhases();
|
| -
|
| - // Since inert top controls are enabled, the iframe element should not have
|
| - // resized, however, its clip layer should resize to reveal content as the
|
| - // browser controls hide.
|
| - EXPECT_EQ(childFrame->view()->visibleContentSize().height(), 400);
|
| - EXPECT_EQ(childPLC->containerLayer()->size().height(), 450);
|
| - EXPECT_EQ(childPLC->rootGraphicsLayer()->size().height(), 450);
|
| - }
|
| -
|
| - RuntimeEnabledFeatures::setInertTopControlsEnabled(oldInertTopControls);
|
| -}
|
| -
|
| // Tests that removing the root scroller element from the DOM resets the
|
| // effective root scroller without waiting for any lifecycle events.
|
| TEST_F(RootScrollerTest, RemoveRootScrollerFromDom) {
|
|
|