| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 7648 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7659 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad( | 7659 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad( |
| 7660 m_baseURL + "fullscreen_div.html", true, nullptr, &client, nullptr, | 7660 m_baseURL + "fullscreen_div.html", true, nullptr, &client, nullptr, |
| 7661 configureAndroid); | 7661 configureAndroid); |
| 7662 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); | 7662 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); |
| 7663 webViewImpl->updateAllLifecyclePhases(); | 7663 webViewImpl->updateAllLifecyclePhases(); |
| 7664 | 7664 |
| 7665 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); | 7665 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); |
| 7666 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); | 7666 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); |
| 7667 Element* divFullscreen = document->getElementById("div1"); | 7667 Element* divFullscreen = document->getElementById("div1"); |
| 7668 Fullscreen::requestFullscreen(*divFullscreen); | 7668 Fullscreen::requestFullscreen(*divFullscreen); |
| 7669 EXPECT_EQ(nullptr, Fullscreen::currentFullScreenElementFrom(*document)); |
| 7670 EXPECT_EQ(divFullscreen, Fullscreen::fullscreenElementFrom(*document)); |
| 7669 webViewImpl->didEnterFullscreen(); | 7671 webViewImpl->didEnterFullscreen(); |
| 7670 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*document)); | 7672 EXPECT_EQ(divFullscreen, Fullscreen::currentFullScreenElementFrom(*document)); |
| 7671 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 7672 EXPECT_EQ(divFullscreen, Fullscreen::fullscreenElementFrom(*document)); | 7673 EXPECT_EQ(divFullscreen, Fullscreen::fullscreenElementFrom(*document)); |
| 7673 webViewImpl->updateAllLifecyclePhases(); | 7674 webViewImpl->updateAllLifecyclePhases(); |
| 7675 EXPECT_EQ(divFullscreen, Fullscreen::currentFullScreenElementFrom(*document)); |
| 7676 EXPECT_EQ(divFullscreen, Fullscreen::fullscreenElementFrom(*document)); |
| 7674 | 7677 |
| 7675 // Verify that the element is sized to the viewport. | 7678 // Verify that the element is sized to the viewport. |
| 7676 LayoutFullScreen* fullscreenLayoutObject = | 7679 LayoutFullScreen* fullscreenLayoutObject = |
| 7677 Fullscreen::from(*document).fullScreenLayoutObject(); | 7680 Fullscreen::from(*document).fullScreenLayoutObject(); |
| 7678 EXPECT_EQ(viewportWidth, fullscreenLayoutObject->logicalWidth().toInt()); | 7681 EXPECT_EQ(viewportWidth, fullscreenLayoutObject->logicalWidth().toInt()); |
| 7679 EXPECT_EQ(viewportHeight, fullscreenLayoutObject->logicalHeight().toInt()); | 7682 EXPECT_EQ(viewportHeight, fullscreenLayoutObject->logicalHeight().toInt()); |
| 7680 | 7683 |
| 7681 // Verify it's updated after a device rotation. | 7684 // Verify it's updated after a device rotation. |
| 7682 client.m_screenInfo.rect.width = viewportHeight; | 7685 client.m_screenInfo.rect.width = viewportHeight; |
| 7683 client.m_screenInfo.rect.height = viewportWidth; | 7686 client.m_screenInfo.rect.height = viewportWidth; |
| (...skipping 12 matching lines...) Expand all Loading... |
| 7696 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad( | 7699 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad( |
| 7697 m_baseURL + "fullscreen_div.html", true, nullptr, &client, nullptr, | 7700 m_baseURL + "fullscreen_div.html", true, nullptr, &client, nullptr, |
| 7698 configureAndroid); | 7701 configureAndroid); |
| 7699 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); | 7702 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); |
| 7700 webViewImpl->updateAllLifecyclePhases(); | 7703 webViewImpl->updateAllLifecyclePhases(); |
| 7701 | 7704 |
| 7702 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); | 7705 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); |
| 7703 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); | 7706 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); |
| 7704 Element* divFullscreen = document->getElementById("div1"); | 7707 Element* divFullscreen = document->getElementById("div1"); |
| 7705 Fullscreen::requestFullscreen(*divFullscreen); | 7708 Fullscreen::requestFullscreen(*divFullscreen); |
| 7709 EXPECT_EQ(nullptr, Fullscreen::currentFullScreenElementFrom(*document)); |
| 7710 EXPECT_EQ(divFullscreen, Fullscreen::fullscreenElementFrom(*document)); |
| 7706 webViewImpl->didEnterFullscreen(); | 7711 webViewImpl->didEnterFullscreen(); |
| 7707 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*document)); | 7712 EXPECT_EQ(divFullscreen, Fullscreen::currentFullScreenElementFrom(*document)); |
| 7708 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 7709 EXPECT_EQ(divFullscreen, Fullscreen::fullscreenElementFrom(*document)); | 7713 EXPECT_EQ(divFullscreen, Fullscreen::fullscreenElementFrom(*document)); |
| 7710 webViewImpl->updateAllLifecyclePhases(); | 7714 webViewImpl->updateAllLifecyclePhases(); |
| 7715 EXPECT_EQ(divFullscreen, Fullscreen::currentFullScreenElementFrom(*document)); |
| 7716 EXPECT_EQ(divFullscreen, Fullscreen::fullscreenElementFrom(*document)); |
| 7711 | 7717 |
| 7712 // Verify that the viewports are nonscrollable. | 7718 // Verify that the viewports are nonscrollable. |
| 7713 FrameView* frameView = webViewHelper.webView()->mainFrameImpl()->frameView(); | 7719 FrameView* frameView = webViewHelper.webView()->mainFrameImpl()->frameView(); |
| 7714 WebLayer* layoutViewportScrollLayer = | 7720 WebLayer* layoutViewportScrollLayer = |
| 7715 webViewImpl->compositor()->scrollLayer()->platformLayer(); | 7721 webViewImpl->compositor()->scrollLayer()->platformLayer(); |
| 7716 WebLayer* visualViewportScrollLayer = frameView->page() | 7722 WebLayer* visualViewportScrollLayer = frameView->page() |
| 7717 ->frameHost() | 7723 ->frameHost() |
| 7718 .visualViewport() | 7724 .visualViewport() |
| 7719 .scrollLayer() | 7725 .scrollLayer() |
| 7720 ->platformLayer(); | 7726 ->platformLayer(); |
| 7721 ASSERT_FALSE(layoutViewportScrollLayer->userScrollableHorizontal()); | 7727 ASSERT_FALSE(layoutViewportScrollLayer->userScrollableHorizontal()); |
| 7722 ASSERT_FALSE(layoutViewportScrollLayer->userScrollableVertical()); | 7728 ASSERT_FALSE(layoutViewportScrollLayer->userScrollableVertical()); |
| 7723 ASSERT_FALSE(visualViewportScrollLayer->userScrollableHorizontal()); | 7729 ASSERT_FALSE(visualViewportScrollLayer->userScrollableHorizontal()); |
| 7724 ASSERT_FALSE(visualViewportScrollLayer->userScrollableVertical()); | 7730 ASSERT_FALSE(visualViewportScrollLayer->userScrollableVertical()); |
| 7725 | 7731 |
| 7726 // Verify that the viewports are scrollable upon exiting fullscreen. | 7732 // Verify that the viewports are scrollable upon exiting fullscreen. |
| 7733 EXPECT_EQ(divFullscreen, Fullscreen::currentFullScreenElementFrom(*document)); |
| 7734 EXPECT_EQ(divFullscreen, Fullscreen::fullscreenElementFrom(*document)); |
| 7727 webViewImpl->didExitFullscreen(); | 7735 webViewImpl->didExitFullscreen(); |
| 7728 EXPECT_EQ(divFullscreen, Fullscreen::fullscreenElementFrom(*document)); | 7736 EXPECT_EQ(nullptr, Fullscreen::currentFullScreenElementFrom(*document)); |
| 7729 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 7730 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*document)); | 7737 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*document)); |
| 7731 webViewImpl->updateAllLifecyclePhases(); | 7738 webViewImpl->updateAllLifecyclePhases(); |
| 7739 EXPECT_EQ(nullptr, Fullscreen::currentFullScreenElementFrom(*document)); |
| 7740 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*document)); |
| 7732 ASSERT_TRUE(layoutViewportScrollLayer->userScrollableHorizontal()); | 7741 ASSERT_TRUE(layoutViewportScrollLayer->userScrollableHorizontal()); |
| 7733 ASSERT_TRUE(layoutViewportScrollLayer->userScrollableVertical()); | 7742 ASSERT_TRUE(layoutViewportScrollLayer->userScrollableVertical()); |
| 7734 ASSERT_TRUE(visualViewportScrollLayer->userScrollableHorizontal()); | 7743 ASSERT_TRUE(visualViewportScrollLayer->userScrollableHorizontal()); |
| 7735 ASSERT_TRUE(visualViewportScrollLayer->userScrollableVertical()); | 7744 ASSERT_TRUE(visualViewportScrollLayer->userScrollableVertical()); |
| 7736 } | 7745 } |
| 7737 | 7746 |
| 7738 TEST_P(ParameterizedWebFrameTest, FullscreenMainFrame) { | 7747 TEST_P(ParameterizedWebFrameTest, FullscreenMainFrame) { |
| 7739 FakeCompositingWebViewClient client; | 7748 FakeCompositingWebViewClient client; |
| 7740 registerMockedHttpURLLoad("fullscreen_div.html"); | 7749 registerMockedHttpURLLoad("fullscreen_div.html"); |
| 7741 FrameTestHelpers::WebViewHelper webViewHelper; | 7750 FrameTestHelpers::WebViewHelper webViewHelper; |
| 7742 int viewportWidth = 640; | 7751 int viewportWidth = 640; |
| 7743 int viewportHeight = 480; | 7752 int viewportHeight = 480; |
| 7744 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad( | 7753 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad( |
| 7745 m_baseURL + "fullscreen_div.html", true, nullptr, &client, nullptr, | 7754 m_baseURL + "fullscreen_div.html", true, nullptr, &client, nullptr, |
| 7746 configureAndroid); | 7755 configureAndroid); |
| 7747 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); | 7756 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); |
| 7748 webViewImpl->updateAllLifecyclePhases(); | 7757 webViewImpl->updateAllLifecyclePhases(); |
| 7749 | 7758 |
| 7750 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); | 7759 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); |
| 7751 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); | 7760 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); |
| 7752 Fullscreen::requestFullscreen(*document->documentElement()); | 7761 Fullscreen::requestFullscreen(*document->documentElement()); |
| 7753 webViewImpl->didEnterFullscreen(); | 7762 EXPECT_EQ(nullptr, Fullscreen::currentFullScreenElementFrom(*document)); |
| 7754 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*document)); | |
| 7755 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 7756 EXPECT_EQ(document->documentElement(), | 7763 EXPECT_EQ(document->documentElement(), |
| 7757 Fullscreen::fullscreenElementFrom(*document)); | 7764 Fullscreen::fullscreenElementFrom(*document)); |
| 7765 webViewImpl->didEnterFullscreen(); |
| 7766 EXPECT_EQ(document->documentElement(), |
| 7767 Fullscreen::currentFullScreenElementFrom(*document)); |
| 7768 EXPECT_EQ(document->documentElement(), |
| 7769 Fullscreen::fullscreenElementFrom(*document)); |
| 7770 |
| 7758 webViewImpl->updateAllLifecyclePhases(); | 7771 webViewImpl->updateAllLifecyclePhases(); |
| 7772 EXPECT_EQ(document->documentElement(), |
| 7773 Fullscreen::currentFullScreenElementFrom(*document)); |
| 7774 EXPECT_EQ(document->documentElement(), |
| 7775 Fullscreen::fullscreenElementFrom(*document)); |
| 7759 | 7776 |
| 7760 // Verify that the main frame is still scrollable. | 7777 // Verify that the main frame is still scrollable. |
| 7761 WebLayer* webScrollLayer = | 7778 WebLayer* webScrollLayer = |
| 7762 webViewImpl->compositor()->scrollLayer()->platformLayer(); | 7779 webViewImpl->compositor()->scrollLayer()->platformLayer(); |
| 7763 ASSERT_TRUE(webScrollLayer->scrollable()); | 7780 ASSERT_TRUE(webScrollLayer->scrollable()); |
| 7764 ASSERT_TRUE(webScrollLayer->userScrollableHorizontal()); | 7781 ASSERT_TRUE(webScrollLayer->userScrollableHorizontal()); |
| 7765 ASSERT_TRUE(webScrollLayer->userScrollableVertical()); | 7782 ASSERT_TRUE(webScrollLayer->userScrollableVertical()); |
| 7766 | 7783 |
| 7767 // Verify the main frame still behaves correctly after a resize. | 7784 // Verify the main frame still behaves correctly after a resize. |
| 7768 webViewHelper.resize(WebSize(viewportHeight, viewportWidth)); | 7785 webViewHelper.resize(WebSize(viewportHeight, viewportWidth)); |
| (...skipping 18 matching lines...) Expand all Loading... |
| 7787 webViewImpl->updateAllLifecyclePhases(); | 7804 webViewImpl->updateAllLifecyclePhases(); |
| 7788 | 7805 |
| 7789 Document* document = | 7806 Document* document = |
| 7790 toWebLocalFrameImpl(webViewHelper.webView()->mainFrame()->firstChild()) | 7807 toWebLocalFrameImpl(webViewHelper.webView()->mainFrame()->firstChild()) |
| 7791 ->frame() | 7808 ->frame() |
| 7792 ->document(); | 7809 ->document(); |
| 7793 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); | 7810 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); |
| 7794 Element* divFullscreen = document->getElementById("div1"); | 7811 Element* divFullscreen = document->getElementById("div1"); |
| 7795 Fullscreen::requestFullscreen(*divFullscreen); | 7812 Fullscreen::requestFullscreen(*divFullscreen); |
| 7796 webViewImpl->didEnterFullscreen(); | 7813 webViewImpl->didEnterFullscreen(); |
| 7797 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 7798 webViewImpl->updateAllLifecyclePhases(); | 7814 webViewImpl->updateAllLifecyclePhases(); |
| 7799 | 7815 |
| 7800 // Verify that the element is sized to the viewport. | 7816 // Verify that the element is sized to the viewport. |
| 7801 LayoutFullScreen* fullscreenLayoutObject = | 7817 LayoutFullScreen* fullscreenLayoutObject = |
| 7802 Fullscreen::from(*document).fullScreenLayoutObject(); | 7818 Fullscreen::from(*document).fullScreenLayoutObject(); |
| 7803 EXPECT_EQ(viewportWidth, fullscreenLayoutObject->logicalWidth().toInt()); | 7819 EXPECT_EQ(viewportWidth, fullscreenLayoutObject->logicalWidth().toInt()); |
| 7804 EXPECT_EQ(viewportHeight, fullscreenLayoutObject->logicalHeight().toInt()); | 7820 EXPECT_EQ(viewportHeight, fullscreenLayoutObject->logicalHeight().toInt()); |
| 7805 | 7821 |
| 7806 // Verify it's updated after a device rotation. | 7822 // Verify it's updated after a device rotation. |
| 7807 client.m_screenInfo.rect.width = viewportHeight; | 7823 client.m_screenInfo.rect.width = viewportHeight; |
| (...skipping 21 matching lines...) Expand all Loading... |
| 7829 HTMLIFrameElement* iframe = | 7845 HTMLIFrameElement* iframe = |
| 7830 toHTMLIFrameElement(topDoc->querySelector("iframe")); | 7846 toHTMLIFrameElement(topDoc->querySelector("iframe")); |
| 7831 Document* iframeDoc = iframe->contentDocument(); | 7847 Document* iframeDoc = iframe->contentDocument(); |
| 7832 Element* iframeBody = iframeDoc->body(); | 7848 Element* iframeBody = iframeDoc->body(); |
| 7833 | 7849 |
| 7834 { | 7850 { |
| 7835 UserGestureIndicator gesture(DocumentUserGestureToken::create(topDoc)); | 7851 UserGestureIndicator gesture(DocumentUserGestureToken::create(topDoc)); |
| 7836 Fullscreen::requestFullscreen(*topBody); | 7852 Fullscreen::requestFullscreen(*topBody); |
| 7837 } | 7853 } |
| 7838 webViewImpl->didEnterFullscreen(); | 7854 webViewImpl->didEnterFullscreen(); |
| 7839 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*topDoc)); | |
| 7840 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*iframeDoc)); | |
| 7841 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 7842 EXPECT_EQ(topBody, Fullscreen::fullscreenElementFrom(*topDoc)); | |
| 7843 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*iframeDoc)); | |
| 7844 webViewImpl->updateAllLifecyclePhases(); | 7855 webViewImpl->updateAllLifecyclePhases(); |
| 7845 | 7856 |
| 7846 { | 7857 { |
| 7847 UserGestureIndicator gesture(DocumentUserGestureToken::create(iframeDoc)); | 7858 UserGestureIndicator gesture(DocumentUserGestureToken::create(iframeDoc)); |
| 7848 Fullscreen::requestFullscreen(*iframeBody); | 7859 Fullscreen::requestFullscreen(*iframeBody); |
| 7849 } | 7860 } |
| 7850 webViewImpl->didEnterFullscreen(); | 7861 webViewImpl->didEnterFullscreen(); |
| 7851 EXPECT_EQ(topBody, Fullscreen::fullscreenElementFrom(*topDoc)); | |
| 7852 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*iframeDoc)); | |
| 7853 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 7854 EXPECT_EQ(iframe, Fullscreen::fullscreenElementFrom(*topDoc)); | |
| 7855 EXPECT_EQ(iframeBody, Fullscreen::fullscreenElementFrom(*iframeDoc)); | |
| 7856 webViewImpl->updateAllLifecyclePhases(); | 7862 webViewImpl->updateAllLifecyclePhases(); |
| 7857 | 7863 |
| 7858 // We are now in nested fullscreen, with both documents having a non-empty | 7864 // We are now in nested fullscreen, with both documents having a non-empty |
| 7859 // fullscreen element stack. | 7865 // fullscreen element stack. |
| 7866 EXPECT_EQ(topBody, Fullscreen::currentFullScreenElementFrom(*topDoc)); |
| 7867 EXPECT_EQ(iframe, Fullscreen::fullscreenElementFrom(*topDoc)); |
| 7868 EXPECT_EQ(iframeBody, Fullscreen::currentFullScreenElementFrom(*iframeDoc)); |
| 7869 EXPECT_EQ(iframeBody, Fullscreen::fullscreenElementFrom(*iframeDoc)); |
| 7860 | 7870 |
| 7861 webViewImpl->didExitFullscreen(); | 7871 webViewImpl->didExitFullscreen(); |
| 7862 EXPECT_EQ(iframe, Fullscreen::fullscreenElementFrom(*topDoc)); | |
| 7863 EXPECT_EQ(iframeBody, Fullscreen::fullscreenElementFrom(*iframeDoc)); | |
| 7864 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 7865 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*topDoc)); | |
| 7866 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*iframeDoc)); | |
| 7867 webViewImpl->updateAllLifecyclePhases(); | 7872 webViewImpl->updateAllLifecyclePhases(); |
| 7868 | 7873 |
| 7869 // We have now fully exited fullscreen. | 7874 // We should now have fully exited fullscreen. |
| 7875 EXPECT_EQ(nullptr, Fullscreen::currentFullScreenElementFrom(*topDoc)); |
| 7876 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*topDoc)); |
| 7877 EXPECT_EQ(nullptr, Fullscreen::currentFullScreenElementFrom(*iframeDoc)); |
| 7878 EXPECT_EQ(nullptr, Fullscreen::fullscreenElementFrom(*iframeDoc)); |
| 7870 } | 7879 } |
| 7871 | 7880 |
| 7872 TEST_P(ParameterizedWebFrameTest, FullscreenWithTinyViewport) { | 7881 TEST_P(ParameterizedWebFrameTest, FullscreenWithTinyViewport) { |
| 7873 FakeCompositingWebViewClient client; | 7882 FakeCompositingWebViewClient client; |
| 7874 registerMockedHttpURLLoad("viewport-tiny.html"); | 7883 registerMockedHttpURLLoad("viewport-tiny.html"); |
| 7875 FrameTestHelpers::WebViewHelper webViewHelper; | 7884 FrameTestHelpers::WebViewHelper webViewHelper; |
| 7876 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad( | 7885 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad( |
| 7877 m_baseURL + "viewport-tiny.html", true, nullptr, &client, nullptr, | 7886 m_baseURL + "viewport-tiny.html", true, nullptr, &client, nullptr, |
| 7878 configureAndroid); | 7887 configureAndroid); |
| 7879 int viewportWidth = 384; | 7888 int viewportWidth = 384; |
| 7880 int viewportHeight = 640; | 7889 int viewportHeight = 640; |
| 7881 client.m_screenInfo.rect.width = viewportWidth; | 7890 client.m_screenInfo.rect.width = viewportWidth; |
| 7882 client.m_screenInfo.rect.height = viewportHeight; | 7891 client.m_screenInfo.rect.height = viewportHeight; |
| 7883 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); | 7892 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); |
| 7884 webViewImpl->updateAllLifecyclePhases(); | 7893 webViewImpl->updateAllLifecyclePhases(); |
| 7885 | 7894 |
| 7886 LayoutViewItem layoutViewItem = | 7895 LayoutViewItem layoutViewItem = |
| 7887 webViewHelper.webView()->mainFrameImpl()->frameView()->layoutViewItem(); | 7896 webViewHelper.webView()->mainFrameImpl()->frameView()->layoutViewItem(); |
| 7888 EXPECT_EQ(320, layoutViewItem.logicalWidth().floor()); | 7897 EXPECT_EQ(320, layoutViewItem.logicalWidth().floor()); |
| 7889 EXPECT_EQ(533, layoutViewItem.logicalHeight().floor()); | 7898 EXPECT_EQ(533, layoutViewItem.logicalHeight().floor()); |
| 7890 EXPECT_FLOAT_EQ(1.2, webViewImpl->pageScaleFactor()); | 7899 EXPECT_FLOAT_EQ(1.2, webViewImpl->pageScaleFactor()); |
| 7891 EXPECT_FLOAT_EQ(1.2, webViewImpl->minimumPageScaleFactor()); | 7900 EXPECT_FLOAT_EQ(1.2, webViewImpl->minimumPageScaleFactor()); |
| 7892 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); | 7901 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); |
| 7893 | 7902 |
| 7894 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); | 7903 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); |
| 7895 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); | 7904 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); |
| 7896 Fullscreen::requestFullscreen(*document->documentElement()); | 7905 Fullscreen::requestFullscreen(*document->documentElement()); |
| 7897 webViewImpl->didEnterFullscreen(); | 7906 webViewImpl->didEnterFullscreen(); |
| 7898 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 7899 webViewImpl->updateAllLifecyclePhases(); | 7907 webViewImpl->updateAllLifecyclePhases(); |
| 7900 EXPECT_EQ(384, layoutViewItem.logicalWidth().floor()); | 7908 EXPECT_EQ(384, layoutViewItem.logicalWidth().floor()); |
| 7901 EXPECT_EQ(640, layoutViewItem.logicalHeight().floor()); | 7909 EXPECT_EQ(640, layoutViewItem.logicalHeight().floor()); |
| 7902 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); | 7910 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); |
| 7903 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); | 7911 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); |
| 7904 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); | 7912 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); |
| 7905 | 7913 |
| 7906 webViewImpl->didExitFullscreen(); | 7914 webViewImpl->didExitFullscreen(); |
| 7907 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 7908 webViewImpl->updateAllLifecyclePhases(); | 7915 webViewImpl->updateAllLifecyclePhases(); |
| 7909 EXPECT_EQ(320, layoutViewItem.logicalWidth().floor()); | 7916 EXPECT_EQ(320, layoutViewItem.logicalWidth().floor()); |
| 7910 EXPECT_EQ(533, layoutViewItem.logicalHeight().floor()); | 7917 EXPECT_EQ(533, layoutViewItem.logicalHeight().floor()); |
| 7911 EXPECT_FLOAT_EQ(1.2, webViewImpl->pageScaleFactor()); | 7918 EXPECT_FLOAT_EQ(1.2, webViewImpl->pageScaleFactor()); |
| 7912 EXPECT_FLOAT_EQ(1.2, webViewImpl->minimumPageScaleFactor()); | 7919 EXPECT_FLOAT_EQ(1.2, webViewImpl->minimumPageScaleFactor()); |
| 7913 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); | 7920 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); |
| 7914 } | 7921 } |
| 7915 | 7922 |
| 7916 TEST_P(ParameterizedWebFrameTest, FullscreenResizeWithTinyViewport) { | 7923 TEST_P(ParameterizedWebFrameTest, FullscreenResizeWithTinyViewport) { |
| 7917 FakeCompositingWebViewClient client; | 7924 FakeCompositingWebViewClient client; |
| 7918 registerMockedHttpURLLoad("viewport-tiny.html"); | 7925 registerMockedHttpURLLoad("viewport-tiny.html"); |
| 7919 FrameTestHelpers::WebViewHelper webViewHelper; | 7926 FrameTestHelpers::WebViewHelper webViewHelper; |
| 7920 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad( | 7927 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad( |
| 7921 m_baseURL + "viewport-tiny.html", true, nullptr, &client, nullptr, | 7928 m_baseURL + "viewport-tiny.html", true, nullptr, &client, nullptr, |
| 7922 configureAndroid); | 7929 configureAndroid); |
| 7923 int viewportWidth = 384; | 7930 int viewportWidth = 384; |
| 7924 int viewportHeight = 640; | 7931 int viewportHeight = 640; |
| 7925 client.m_screenInfo.rect.width = viewportWidth; | 7932 client.m_screenInfo.rect.width = viewportWidth; |
| 7926 client.m_screenInfo.rect.height = viewportHeight; | 7933 client.m_screenInfo.rect.height = viewportHeight; |
| 7927 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); | 7934 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); |
| 7928 webViewImpl->updateAllLifecyclePhases(); | 7935 webViewImpl->updateAllLifecyclePhases(); |
| 7929 | 7936 |
| 7930 LayoutViewItem layoutViewItem = | 7937 LayoutViewItem layoutViewItem = |
| 7931 webViewHelper.webView()->mainFrameImpl()->frameView()->layoutViewItem(); | 7938 webViewHelper.webView()->mainFrameImpl()->frameView()->layoutViewItem(); |
| 7932 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); | 7939 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); |
| 7933 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); | 7940 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); |
| 7934 Fullscreen::requestFullscreen(*document->documentElement()); | 7941 Fullscreen::requestFullscreen(*document->documentElement()); |
| 7935 webViewImpl->didEnterFullscreen(); | 7942 webViewImpl->didEnterFullscreen(); |
| 7936 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 7937 webViewImpl->updateAllLifecyclePhases(); | 7943 webViewImpl->updateAllLifecyclePhases(); |
| 7938 EXPECT_EQ(384, layoutViewItem.logicalWidth().floor()); | 7944 EXPECT_EQ(384, layoutViewItem.logicalWidth().floor()); |
| 7939 EXPECT_EQ(640, layoutViewItem.logicalHeight().floor()); | 7945 EXPECT_EQ(640, layoutViewItem.logicalHeight().floor()); |
| 7940 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); | 7946 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); |
| 7941 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); | 7947 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); |
| 7942 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); | 7948 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); |
| 7943 | 7949 |
| 7944 viewportWidth = 640; | 7950 viewportWidth = 640; |
| 7945 viewportHeight = 384; | 7951 viewportHeight = 384; |
| 7946 client.m_screenInfo.rect.width = viewportWidth; | 7952 client.m_screenInfo.rect.width = viewportWidth; |
| 7947 client.m_screenInfo.rect.height = viewportHeight; | 7953 client.m_screenInfo.rect.height = viewportHeight; |
| 7948 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); | 7954 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); |
| 7949 webViewImpl->updateAllLifecyclePhases(); | 7955 webViewImpl->updateAllLifecyclePhases(); |
| 7950 EXPECT_EQ(640, layoutViewItem.logicalWidth().floor()); | 7956 EXPECT_EQ(640, layoutViewItem.logicalWidth().floor()); |
| 7951 EXPECT_EQ(384, layoutViewItem.logicalHeight().floor()); | 7957 EXPECT_EQ(384, layoutViewItem.logicalHeight().floor()); |
| 7952 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); | 7958 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); |
| 7953 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); | 7959 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); |
| 7954 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); | 7960 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); |
| 7955 | 7961 |
| 7956 webViewImpl->didExitFullscreen(); | 7962 webViewImpl->didExitFullscreen(); |
| 7957 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 7958 webViewImpl->updateAllLifecyclePhases(); | 7963 webViewImpl->updateAllLifecyclePhases(); |
| 7959 EXPECT_EQ(320, layoutViewItem.logicalWidth().floor()); | 7964 EXPECT_EQ(320, layoutViewItem.logicalWidth().floor()); |
| 7960 EXPECT_EQ(192, layoutViewItem.logicalHeight().floor()); | 7965 EXPECT_EQ(192, layoutViewItem.logicalHeight().floor()); |
| 7961 EXPECT_FLOAT_EQ(2, webViewImpl->pageScaleFactor()); | 7966 EXPECT_FLOAT_EQ(2, webViewImpl->pageScaleFactor()); |
| 7962 EXPECT_FLOAT_EQ(2, webViewImpl->minimumPageScaleFactor()); | 7967 EXPECT_FLOAT_EQ(2, webViewImpl->minimumPageScaleFactor()); |
| 7963 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); | 7968 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); |
| 7964 } | 7969 } |
| 7965 | 7970 |
| 7966 TEST_P(ParameterizedWebFrameTest, FullscreenRestoreScaleFactorUponExiting) { | 7971 TEST_P(ParameterizedWebFrameTest, FullscreenRestoreScaleFactorUponExiting) { |
| 7967 // The purpose of this test is to more precisely simulate the sequence of | 7972 // The purpose of this test is to more precisely simulate the sequence of |
| (...skipping 23 matching lines...) Expand all Loading... |
| 7991 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); | 7996 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); |
| 7992 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); | 7997 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); |
| 7993 | 7998 |
| 7994 { | 7999 { |
| 7995 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); | 8000 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); |
| 7996 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); | 8001 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); |
| 7997 Fullscreen::requestFullscreen(*document->body()); | 8002 Fullscreen::requestFullscreen(*document->body()); |
| 7998 } | 8003 } |
| 7999 | 8004 |
| 8000 webViewImpl->didEnterFullscreen(); | 8005 webViewImpl->didEnterFullscreen(); |
| 8001 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 8002 webViewImpl->updateAllLifecyclePhases(); | 8006 webViewImpl->updateAllLifecyclePhases(); |
| 8003 client.m_screenInfo.rect.width = screenSizeMinusStatusBars.width; | 8007 client.m_screenInfo.rect.width = screenSizeMinusStatusBars.width; |
| 8004 client.m_screenInfo.rect.height = screenSizeMinusStatusBars.height; | 8008 client.m_screenInfo.rect.height = screenSizeMinusStatusBars.height; |
| 8005 webViewHelper.resize(screenSizeMinusStatusBars); | 8009 webViewHelper.resize(screenSizeMinusStatusBars); |
| 8006 client.m_screenInfo.rect.width = screenSize.width; | 8010 client.m_screenInfo.rect.width = screenSize.width; |
| 8007 client.m_screenInfo.rect.height = screenSize.height; | 8011 client.m_screenInfo.rect.height = screenSize.height; |
| 8008 webViewHelper.resize(screenSize); | 8012 webViewHelper.resize(screenSize); |
| 8009 EXPECT_EQ(screenSize.width, layoutViewItem.logicalWidth().floor()); | 8013 EXPECT_EQ(screenSize.width, layoutViewItem.logicalWidth().floor()); |
| 8010 EXPECT_EQ(screenSize.height, layoutViewItem.logicalHeight().floor()); | 8014 EXPECT_EQ(screenSize.height, layoutViewItem.logicalHeight().floor()); |
| 8011 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); | 8015 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); |
| 8012 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); | 8016 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); |
| 8013 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); | 8017 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); |
| 8014 | 8018 |
| 8015 webViewImpl->didExitFullscreen(); | 8019 webViewImpl->didExitFullscreen(); |
| 8016 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 8017 webViewImpl->updateAllLifecyclePhases(); | 8020 webViewImpl->updateAllLifecyclePhases(); |
| 8018 client.m_screenInfo.rect.width = screenSizeMinusStatusBars.width; | 8021 client.m_screenInfo.rect.width = screenSizeMinusStatusBars.width; |
| 8019 client.m_screenInfo.rect.height = screenSizeMinusStatusBars.height; | 8022 client.m_screenInfo.rect.height = screenSizeMinusStatusBars.height; |
| 8020 webViewHelper.resize(screenSizeMinusStatusBars); | 8023 webViewHelper.resize(screenSizeMinusStatusBars); |
| 8021 client.m_screenInfo.rect.width = screenSizeMinusStatusBarsMinusUrlBar.width; | 8024 client.m_screenInfo.rect.width = screenSizeMinusStatusBarsMinusUrlBar.width; |
| 8022 client.m_screenInfo.rect.height = screenSizeMinusStatusBarsMinusUrlBar.height; | 8025 client.m_screenInfo.rect.height = screenSizeMinusStatusBarsMinusUrlBar.height; |
| 8023 webViewHelper.resize(screenSizeMinusStatusBarsMinusUrlBar); | 8026 webViewHelper.resize(screenSizeMinusStatusBarsMinusUrlBar); |
| 8024 EXPECT_EQ(screenSizeMinusStatusBarsMinusUrlBar.width, | 8027 EXPECT_EQ(screenSizeMinusStatusBarsMinusUrlBar.width, |
| 8025 layoutViewItem.logicalWidth().floor()); | 8028 layoutViewItem.logicalWidth().floor()); |
| 8026 EXPECT_EQ(screenSizeMinusStatusBarsMinusUrlBar.height, | 8029 EXPECT_EQ(screenSizeMinusStatusBarsMinusUrlBar.height, |
| (...skipping 25 matching lines...) Expand all Loading... |
| 8052 EXPECT_EQ(640, layoutViewItem.logicalHeight().floor()); | 8055 EXPECT_EQ(640, layoutViewItem.logicalHeight().floor()); |
| 8053 EXPECT_FLOAT_EQ(0.3125, webViewImpl->pageScaleFactor()); | 8056 EXPECT_FLOAT_EQ(0.3125, webViewImpl->pageScaleFactor()); |
| 8054 EXPECT_FLOAT_EQ(0.3125, webViewImpl->minimumPageScaleFactor()); | 8057 EXPECT_FLOAT_EQ(0.3125, webViewImpl->minimumPageScaleFactor()); |
| 8055 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); | 8058 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); |
| 8056 | 8059 |
| 8057 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); | 8060 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); |
| 8058 UserGestureIndicator gesture( | 8061 UserGestureIndicator gesture( |
| 8059 DocumentUserGestureToken::create(document, UserGestureToken::NewGesture)); | 8062 DocumentUserGestureToken::create(document, UserGestureToken::NewGesture)); |
| 8060 Fullscreen::requestFullscreen(*document->documentElement()); | 8063 Fullscreen::requestFullscreen(*document->documentElement()); |
| 8061 webViewImpl->didEnterFullscreen(); | 8064 webViewImpl->didEnterFullscreen(); |
| 8062 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 8063 webViewImpl->updateAllLifecyclePhases(); | 8065 webViewImpl->updateAllLifecyclePhases(); |
| 8064 | 8066 |
| 8065 // Entering fullscreen causes layout size and page scale limits to be | 8067 // Entering fullscreen causes layout size and page scale limits to be |
| 8066 // overridden. | 8068 // overridden. |
| 8067 EXPECT_EQ(100, layoutViewItem.logicalWidth().floor()); | 8069 EXPECT_EQ(100, layoutViewItem.logicalWidth().floor()); |
| 8068 EXPECT_EQ(200, layoutViewItem.logicalHeight().floor()); | 8070 EXPECT_EQ(200, layoutViewItem.logicalHeight().floor()); |
| 8069 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); | 8071 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); |
| 8070 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); | 8072 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); |
| 8071 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); | 8073 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); |
| 8072 | 8074 |
| 8073 const char source[] = "<meta name=\"viewport\" content=\"width=200\">"; | 8075 const char source[] = "<meta name=\"viewport\" content=\"width=200\">"; |
| 8074 | 8076 |
| 8075 // Load a new page before exiting fullscreen. | 8077 // Load a new page before exiting fullscreen. |
| 8076 KURL testURL = toKURL("about:blank"); | 8078 KURL testURL = toKURL("about:blank"); |
| 8077 WebFrame* frame = webViewHelper.webView()->mainFrame(); | 8079 WebFrame* frame = webViewHelper.webView()->mainFrame(); |
| 8078 FrameTestHelpers::loadHTMLString(frame, source, testURL); | 8080 FrameTestHelpers::loadHTMLString(frame, source, testURL); |
| 8079 webViewImpl->didExitFullscreen(); | 8081 webViewImpl->didExitFullscreen(); |
| 8080 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 8081 webViewImpl->updateAllLifecyclePhases(); | 8082 webViewImpl->updateAllLifecyclePhases(); |
| 8082 | 8083 |
| 8083 // Make sure the new page's layout size and scale factor limits aren't | 8084 // Make sure the new page's layout size and scale factor limits aren't |
| 8084 // overridden. | 8085 // overridden. |
| 8085 layoutViewItem = webViewImpl->mainFrameImpl()->frameView()->layoutViewItem(); | 8086 layoutViewItem = webViewImpl->mainFrameImpl()->frameView()->layoutViewItem(); |
| 8086 EXPECT_EQ(200, layoutViewItem.logicalWidth().floor()); | 8087 EXPECT_EQ(200, layoutViewItem.logicalWidth().floor()); |
| 8087 EXPECT_EQ(400, layoutViewItem.logicalHeight().floor()); | 8088 EXPECT_EQ(400, layoutViewItem.logicalHeight().floor()); |
| 8088 EXPECT_FLOAT_EQ(0.5, webViewImpl->minimumPageScaleFactor()); | 8089 EXPECT_FLOAT_EQ(0.5, webViewImpl->minimumPageScaleFactor()); |
| 8089 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); | 8090 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); |
| 8090 } | 8091 } |
| (...skipping 27 matching lines...) Expand all Loading... |
| 8118 m_baseURL + "fullscreen_video.html", true, nullptr, &webViewClient); | 8119 m_baseURL + "fullscreen_video.html", true, nullptr, &webViewClient); |
| 8119 | 8120 |
| 8120 const TestFullscreenWebLayerTreeView& layerTreeView = | 8121 const TestFullscreenWebLayerTreeView& layerTreeView = |
| 8121 webViewClient.testFullscreenLayerTreeView; | 8122 webViewClient.testFullscreenLayerTreeView; |
| 8122 | 8123 |
| 8123 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); | 8124 Document* document = webViewImpl->mainFrameImpl()->frame()->document(); |
| 8124 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); | 8125 UserGestureIndicator gesture(DocumentUserGestureToken::create(document)); |
| 8125 HTMLVideoElement* video = | 8126 HTMLVideoElement* video = |
| 8126 toHTMLVideoElement(document->getElementById("video")); | 8127 toHTMLVideoElement(document->getElementById("video")); |
| 8127 EXPECT_TRUE(video->usesOverlayFullscreenVideo()); | 8128 EXPECT_TRUE(video->usesOverlayFullscreenVideo()); |
| 8129 EXPECT_FALSE(video->isFullscreen()); |
| 8130 EXPECT_FALSE(layerTreeView.hasTransparentBackground); |
| 8128 | 8131 |
| 8129 video->webkitEnterFullscreen(); | 8132 video->webkitEnterFullscreen(); |
| 8130 webViewImpl->didEnterFullscreen(); | 8133 webViewImpl->didEnterFullscreen(); |
| 8134 webViewImpl->updateAllLifecyclePhases(); |
| 8135 EXPECT_TRUE(video->isFullscreen()); |
| 8136 EXPECT_TRUE(layerTreeView.hasTransparentBackground); |
| 8137 |
| 8138 webViewImpl->didExitFullscreen(); |
| 8139 webViewImpl->updateAllLifecyclePhases(); |
| 8131 EXPECT_FALSE(video->isFullscreen()); | 8140 EXPECT_FALSE(video->isFullscreen()); |
| 8132 EXPECT_FALSE(layerTreeView.hasTransparentBackground); | 8141 EXPECT_FALSE(layerTreeView.hasTransparentBackground); |
| 8133 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 8134 EXPECT_TRUE(video->isFullscreen()); | |
| 8135 EXPECT_TRUE(layerTreeView.hasTransparentBackground); | |
| 8136 webViewImpl->updateAllLifecyclePhases(); | |
| 8137 | |
| 8138 webViewImpl->didExitFullscreen(); | |
| 8139 EXPECT_TRUE(video->isFullscreen()); | |
| 8140 EXPECT_TRUE(layerTreeView.hasTransparentBackground); | |
| 8141 webViewImpl->beginFrame(WTF::monotonicallyIncreasingTime()); | |
| 8142 EXPECT_FALSE(video->isFullscreen()); | |
| 8143 EXPECT_FALSE(layerTreeView.hasTransparentBackground); | |
| 8144 webViewImpl->updateAllLifecyclePhases(); | |
| 8145 } | 8142 } |
| 8146 | 8143 |
| 8147 TEST_P(ParameterizedWebFrameTest, LayoutBlockPercentHeightDescendants) { | 8144 TEST_P(ParameterizedWebFrameTest, LayoutBlockPercentHeightDescendants) { |
| 8148 registerMockedHttpURLLoad("percent-height-descendants.html"); | 8145 registerMockedHttpURLLoad("percent-height-descendants.html"); |
| 8149 FrameTestHelpers::WebViewHelper webViewHelper; | 8146 FrameTestHelpers::WebViewHelper webViewHelper; |
| 8150 webViewHelper.initializeAndLoad(m_baseURL + | 8147 webViewHelper.initializeAndLoad(m_baseURL + |
| 8151 "percent-height-descendants.html"); | 8148 "percent-height-descendants.html"); |
| 8152 | 8149 |
| 8153 WebViewImpl* webView = webViewHelper.webView(); | 8150 WebViewImpl* webView = webViewHelper.webView(); |
| 8154 webViewHelper.resize(WebSize(800, 800)); | 8151 webViewHelper.resize(WebSize(800, 800)); |
| (...skipping 3082 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11237 | 11234 |
| 11238 EXPECT_TRUE(mainFrameClient.childClient().didCallFrameDetached()); | 11235 EXPECT_TRUE(mainFrameClient.childClient().didCallFrameDetached()); |
| 11239 EXPECT_TRUE(mainFrameClient.childClient().didCallDidStopLoading()); | 11236 EXPECT_TRUE(mainFrameClient.childClient().didCallDidStopLoading()); |
| 11240 EXPECT_TRUE(mainFrameClient.childClient().didCallDidFinishDocumentLoad()); | 11237 EXPECT_TRUE(mainFrameClient.childClient().didCallDidFinishDocumentLoad()); |
| 11241 EXPECT_TRUE(mainFrameClient.childClient().didCallDidHandleOnloadEvents()); | 11238 EXPECT_TRUE(mainFrameClient.childClient().didCallDidHandleOnloadEvents()); |
| 11242 | 11239 |
| 11243 webViewHelper.reset(); | 11240 webViewHelper.reset(); |
| 11244 } | 11241 } |
| 11245 | 11242 |
| 11246 } // namespace blink | 11243 } // namespace blink |
| OLD | NEW |