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 6452 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6463 client.m_screenInfo.rect.width = viewportWidth; | 6463 client.m_screenInfo.rect.width = viewportWidth; |
6464 client.m_screenInfo.rect.height = viewportHeight; | 6464 client.m_screenInfo.rect.height = viewportHeight; |
6465 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad(m_baseURL + "full
screen_div.html", true, nullptr, &client, nullptr, configureAndroid); | 6465 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad(m_baseURL + "full
screen_div.html", true, nullptr, &client, nullptr, configureAndroid); |
6466 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); | 6466 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); |
6467 webViewImpl->updateAllLifecyclePhases(); | 6467 webViewImpl->updateAllLifecyclePhases(); |
6468 | 6468 |
6469 Document* document = toWebLocalFrameImpl(webViewImpl->mainFrame())->frame()-
>document(); | 6469 Document* document = toWebLocalFrameImpl(webViewImpl->mainFrame())->frame()-
>document(); |
6470 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); | 6470 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); |
6471 Element* divFullscreen = document->getElementById("div1"); | 6471 Element* divFullscreen = document->getElementById("div1"); |
6472 Fullscreen::from(*document).requestFullscreen(*divFullscreen, Fullscreen::Pr
efixedRequest); | 6472 Fullscreen::from(*document).requestFullscreen(*divFullscreen, Fullscreen::Pr
efixedRequest); |
6473 webViewImpl->didEnterFullScreen(); | 6473 webViewImpl->didEnterFullscreen(); |
6474 webViewImpl->updateAllLifecyclePhases(); | 6474 webViewImpl->updateAllLifecyclePhases(); |
6475 ASSERT_TRUE(Fullscreen::isFullScreen(*document)); | 6475 ASSERT_TRUE(Fullscreen::isFullScreen(*document)); |
6476 | 6476 |
6477 // Verify that the element is sized to the viewport. | 6477 // Verify that the element is sized to the viewport. |
6478 LayoutFullScreen* fullscreenLayoutObject = Fullscreen::from(*document).fullS
creenLayoutObject(); | 6478 LayoutFullScreen* fullscreenLayoutObject = Fullscreen::from(*document).fullS
creenLayoutObject(); |
6479 EXPECT_EQ(viewportWidth, fullscreenLayoutObject->logicalWidth().toInt()); | 6479 EXPECT_EQ(viewportWidth, fullscreenLayoutObject->logicalWidth().toInt()); |
6480 EXPECT_EQ(viewportHeight, fullscreenLayoutObject->logicalHeight().toInt()); | 6480 EXPECT_EQ(viewportHeight, fullscreenLayoutObject->logicalHeight().toInt()); |
6481 | 6481 |
6482 // Verify it's updated after a device rotation. | 6482 // Verify it's updated after a device rotation. |
6483 client.m_screenInfo.rect.width = viewportHeight; | 6483 client.m_screenInfo.rect.width = viewportHeight; |
(...skipping 12 matching lines...) Expand all Loading... |
6496 int viewportWidth = 640; | 6496 int viewportWidth = 640; |
6497 int viewportHeight = 480; | 6497 int viewportHeight = 480; |
6498 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad(m_baseURL + "full
screen_div.html", true, nullptr, &client, nullptr, configureAndroid); | 6498 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad(m_baseURL + "full
screen_div.html", true, nullptr, &client, nullptr, configureAndroid); |
6499 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); | 6499 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); |
6500 webViewImpl->updateAllLifecyclePhases(); | 6500 webViewImpl->updateAllLifecyclePhases(); |
6501 | 6501 |
6502 Document* document = toWebLocalFrameImpl(webViewImpl->mainFrame())->frame()-
>document(); | 6502 Document* document = toWebLocalFrameImpl(webViewImpl->mainFrame())->frame()-
>document(); |
6503 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); | 6503 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); |
6504 Element* divFullscreen = document->getElementById("div1"); | 6504 Element* divFullscreen = document->getElementById("div1"); |
6505 Fullscreen::from(*document).requestFullscreen(*divFullscreen, Fullscreen::Pr
efixedRequest); | 6505 Fullscreen::from(*document).requestFullscreen(*divFullscreen, Fullscreen::Pr
efixedRequest); |
6506 webViewImpl->didEnterFullScreen(); | 6506 webViewImpl->didEnterFullscreen(); |
6507 webViewImpl->updateAllLifecyclePhases(); | 6507 webViewImpl->updateAllLifecyclePhases(); |
6508 | 6508 |
6509 // Verify that the viewports are nonscrollable. | 6509 // Verify that the viewports are nonscrollable. |
6510 ASSERT_TRUE(Fullscreen::isFullScreen(*document)); | 6510 ASSERT_TRUE(Fullscreen::isFullScreen(*document)); |
6511 FrameView* frameView = webViewHelper.webViewImpl()->mainFrameImpl()->frameVi
ew(); | 6511 FrameView* frameView = webViewHelper.webViewImpl()->mainFrameImpl()->frameVi
ew(); |
6512 WebLayer* layoutViewportScrollLayer = webViewImpl->compositor()->scrollLayer
()->platformLayer(); | 6512 WebLayer* layoutViewportScrollLayer = webViewImpl->compositor()->scrollLayer
()->platformLayer(); |
6513 WebLayer* visualViewportScrollLayer = frameView->page()->frameHost().visualV
iewport().scrollLayer()->platformLayer(); | 6513 WebLayer* visualViewportScrollLayer = frameView->page()->frameHost().visualV
iewport().scrollLayer()->platformLayer(); |
6514 ASSERT_FALSE(layoutViewportScrollLayer->userScrollableHorizontal()); | 6514 ASSERT_FALSE(layoutViewportScrollLayer->userScrollableHorizontal()); |
6515 ASSERT_FALSE(layoutViewportScrollLayer->userScrollableVertical()); | 6515 ASSERT_FALSE(layoutViewportScrollLayer->userScrollableVertical()); |
6516 ASSERT_FALSE(visualViewportScrollLayer->userScrollableHorizontal()); | 6516 ASSERT_FALSE(visualViewportScrollLayer->userScrollableHorizontal()); |
6517 ASSERT_FALSE(visualViewportScrollLayer->userScrollableVertical()); | 6517 ASSERT_FALSE(visualViewportScrollLayer->userScrollableVertical()); |
6518 | 6518 |
6519 // Verify that the viewports are scrollable upon exiting fullscreen. | 6519 // Verify that the viewports are scrollable upon exiting fullscreen. |
6520 webViewImpl->didExitFullScreen(); | 6520 webViewImpl->didExitFullscreen(); |
6521 webViewImpl->updateAllLifecyclePhases(); | 6521 webViewImpl->updateAllLifecyclePhases(); |
6522 ASSERT_FALSE(Fullscreen::isFullScreen(*document)); | 6522 ASSERT_FALSE(Fullscreen::isFullScreen(*document)); |
6523 ASSERT_TRUE(layoutViewportScrollLayer->userScrollableHorizontal()); | 6523 ASSERT_TRUE(layoutViewportScrollLayer->userScrollableHorizontal()); |
6524 ASSERT_TRUE(layoutViewportScrollLayer->userScrollableVertical()); | 6524 ASSERT_TRUE(layoutViewportScrollLayer->userScrollableVertical()); |
6525 ASSERT_TRUE(visualViewportScrollLayer->userScrollableHorizontal()); | 6525 ASSERT_TRUE(visualViewportScrollLayer->userScrollableHorizontal()); |
6526 ASSERT_TRUE(visualViewportScrollLayer->userScrollableVertical()); | 6526 ASSERT_TRUE(visualViewportScrollLayer->userScrollableVertical()); |
6527 } | 6527 } |
6528 | 6528 |
6529 TEST_P(ParameterizedWebFrameTest, FullscreenMainFrame) | 6529 TEST_P(ParameterizedWebFrameTest, FullscreenMainFrame) |
6530 { | 6530 { |
6531 FakeCompositingWebViewClient client; | 6531 FakeCompositingWebViewClient client; |
6532 registerMockedHttpURLLoad("fullscreen_div.html"); | 6532 registerMockedHttpURLLoad("fullscreen_div.html"); |
6533 FrameTestHelpers::WebViewHelper webViewHelper(this); | 6533 FrameTestHelpers::WebViewHelper webViewHelper(this); |
6534 int viewportWidth = 640; | 6534 int viewportWidth = 640; |
6535 int viewportHeight = 480; | 6535 int viewportHeight = 480; |
6536 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad(m_baseURL + "full
screen_div.html", true, nullptr, &client, nullptr, configureAndroid); | 6536 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad(m_baseURL + "full
screen_div.html", true, nullptr, &client, nullptr, configureAndroid); |
6537 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); | 6537 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); |
6538 webViewImpl->updateAllLifecyclePhases(); | 6538 webViewImpl->updateAllLifecyclePhases(); |
6539 | 6539 |
6540 Document* document = toWebLocalFrameImpl(webViewImpl->mainFrame())->frame()-
>document(); | 6540 Document* document = toWebLocalFrameImpl(webViewImpl->mainFrame())->frame()-
>document(); |
6541 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); | 6541 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); |
6542 Fullscreen::from(*document).requestFullscreen(*document->documentElement(),
Fullscreen::PrefixedRequest); | 6542 Fullscreen::from(*document).requestFullscreen(*document->documentElement(),
Fullscreen::PrefixedRequest); |
6543 webViewImpl->didEnterFullScreen(); | 6543 webViewImpl->didEnterFullscreen(); |
6544 webViewImpl->updateAllLifecyclePhases(); | 6544 webViewImpl->updateAllLifecyclePhases(); |
6545 | 6545 |
6546 // Verify that the main frame is still scrollable. | 6546 // Verify that the main frame is still scrollable. |
6547 ASSERT_TRUE(Fullscreen::isFullScreen(*document)); | 6547 ASSERT_TRUE(Fullscreen::isFullScreen(*document)); |
6548 WebLayer* webScrollLayer = webViewImpl->compositor()->scrollLayer()->platfor
mLayer(); | 6548 WebLayer* webScrollLayer = webViewImpl->compositor()->scrollLayer()->platfor
mLayer(); |
6549 ASSERT_TRUE(webScrollLayer->scrollable()); | 6549 ASSERT_TRUE(webScrollLayer->scrollable()); |
6550 ASSERT_TRUE(webScrollLayer->userScrollableHorizontal()); | 6550 ASSERT_TRUE(webScrollLayer->userScrollableHorizontal()); |
6551 ASSERT_TRUE(webScrollLayer->userScrollableVertical()); | 6551 ASSERT_TRUE(webScrollLayer->userScrollableVertical()); |
6552 | 6552 |
6553 // Verify the main frame still behaves correctly after a resize. | 6553 // Verify the main frame still behaves correctly after a resize. |
(...skipping 14 matching lines...) Expand all Loading... |
6568 int viewportHeight = 480; | 6568 int viewportHeight = 480; |
6569 client.m_screenInfo.rect.width = viewportWidth; | 6569 client.m_screenInfo.rect.width = viewportWidth; |
6570 client.m_screenInfo.rect.height = viewportHeight; | 6570 client.m_screenInfo.rect.height = viewportHeight; |
6571 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); | 6571 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); |
6572 webViewImpl->updateAllLifecyclePhases(); | 6572 webViewImpl->updateAllLifecyclePhases(); |
6573 | 6573 |
6574 Document* document = toWebLocalFrameImpl(webViewHelper.webView()->mainFrame(
)->firstChild())->frame()->document(); | 6574 Document* document = toWebLocalFrameImpl(webViewHelper.webView()->mainFrame(
)->firstChild())->frame()->document(); |
6575 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); | 6575 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); |
6576 Element* divFullscreen = document->getElementById("div1"); | 6576 Element* divFullscreen = document->getElementById("div1"); |
6577 Fullscreen::from(*document).requestFullscreen(*divFullscreen, Fullscreen::Pr
efixedRequest); | 6577 Fullscreen::from(*document).requestFullscreen(*divFullscreen, Fullscreen::Pr
efixedRequest); |
6578 webViewImpl->didEnterFullScreen(); | 6578 webViewImpl->didEnterFullscreen(); |
6579 webViewImpl->updateAllLifecyclePhases(); | 6579 webViewImpl->updateAllLifecyclePhases(); |
6580 | 6580 |
6581 // Verify that the element is sized to the viewport. | 6581 // Verify that the element is sized to the viewport. |
6582 LayoutFullScreen* fullscreenLayoutObject = Fullscreen::from(*document).fullS
creenLayoutObject(); | 6582 LayoutFullScreen* fullscreenLayoutObject = Fullscreen::from(*document).fullS
creenLayoutObject(); |
6583 EXPECT_EQ(viewportWidth, fullscreenLayoutObject->logicalWidth().toInt()); | 6583 EXPECT_EQ(viewportWidth, fullscreenLayoutObject->logicalWidth().toInt()); |
6584 EXPECT_EQ(viewportHeight, fullscreenLayoutObject->logicalHeight().toInt()); | 6584 EXPECT_EQ(viewportHeight, fullscreenLayoutObject->logicalHeight().toInt()); |
6585 | 6585 |
6586 // Verify it's updated after a device rotation. | 6586 // Verify it's updated after a device rotation. |
6587 client.m_screenInfo.rect.width = viewportHeight; | 6587 client.m_screenInfo.rect.width = viewportHeight; |
6588 client.m_screenInfo.rect.height = viewportWidth; | 6588 client.m_screenInfo.rect.height = viewportWidth; |
(...skipping 19 matching lines...) Expand all Loading... |
6608 LayoutViewItem layoutViewItem = webViewHelper.webViewImpl()->mainFrameImpl()
->frameView()->layoutViewItem(); | 6608 LayoutViewItem layoutViewItem = webViewHelper.webViewImpl()->mainFrameImpl()
->frameView()->layoutViewItem(); |
6609 EXPECT_EQ(320, layoutViewItem.logicalWidth().floor()); | 6609 EXPECT_EQ(320, layoutViewItem.logicalWidth().floor()); |
6610 EXPECT_EQ(533, layoutViewItem.logicalHeight().floor()); | 6610 EXPECT_EQ(533, layoutViewItem.logicalHeight().floor()); |
6611 EXPECT_FLOAT_EQ(1.2, webViewImpl->pageScaleFactor()); | 6611 EXPECT_FLOAT_EQ(1.2, webViewImpl->pageScaleFactor()); |
6612 EXPECT_FLOAT_EQ(1.2, webViewImpl->minimumPageScaleFactor()); | 6612 EXPECT_FLOAT_EQ(1.2, webViewImpl->minimumPageScaleFactor()); |
6613 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); | 6613 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); |
6614 | 6614 |
6615 Document* document = toWebLocalFrameImpl(webViewImpl->mainFrame())->frame()-
>document(); | 6615 Document* document = toWebLocalFrameImpl(webViewImpl->mainFrame())->frame()-
>document(); |
6616 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); | 6616 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); |
6617 Fullscreen::from(*document).requestFullscreen(*document->documentElement(),
Fullscreen::PrefixedRequest); | 6617 Fullscreen::from(*document).requestFullscreen(*document->documentElement(),
Fullscreen::PrefixedRequest); |
6618 webViewImpl->didEnterFullScreen(); | 6618 webViewImpl->didEnterFullscreen(); |
6619 webViewImpl->updateAllLifecyclePhases(); | 6619 webViewImpl->updateAllLifecyclePhases(); |
6620 EXPECT_EQ(384, layoutViewItem.logicalWidth().floor()); | 6620 EXPECT_EQ(384, layoutViewItem.logicalWidth().floor()); |
6621 EXPECT_EQ(640, layoutViewItem.logicalHeight().floor()); | 6621 EXPECT_EQ(640, layoutViewItem.logicalHeight().floor()); |
6622 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); | 6622 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); |
6623 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); | 6623 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); |
6624 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); | 6624 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); |
6625 | 6625 |
6626 webViewImpl->didExitFullScreen(); | 6626 webViewImpl->didExitFullscreen(); |
6627 webViewImpl->updateAllLifecyclePhases(); | 6627 webViewImpl->updateAllLifecyclePhases(); |
6628 EXPECT_EQ(320, layoutViewItem.logicalWidth().floor()); | 6628 EXPECT_EQ(320, layoutViewItem.logicalWidth().floor()); |
6629 EXPECT_EQ(533, layoutViewItem.logicalHeight().floor()); | 6629 EXPECT_EQ(533, layoutViewItem.logicalHeight().floor()); |
6630 EXPECT_FLOAT_EQ(1.2, webViewImpl->pageScaleFactor()); | 6630 EXPECT_FLOAT_EQ(1.2, webViewImpl->pageScaleFactor()); |
6631 EXPECT_FLOAT_EQ(1.2, webViewImpl->minimumPageScaleFactor()); | 6631 EXPECT_FLOAT_EQ(1.2, webViewImpl->minimumPageScaleFactor()); |
6632 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); | 6632 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); |
6633 } | 6633 } |
6634 | 6634 |
6635 TEST_P(ParameterizedWebFrameTest, FullscreenResizeWithTinyViewport) | 6635 TEST_P(ParameterizedWebFrameTest, FullscreenResizeWithTinyViewport) |
6636 { | 6636 { |
6637 FakeCompositingWebViewClient client; | 6637 FakeCompositingWebViewClient client; |
6638 registerMockedHttpURLLoad("viewport-tiny.html"); | 6638 registerMockedHttpURLLoad("viewport-tiny.html"); |
6639 FrameTestHelpers::WebViewHelper webViewHelper(this); | 6639 FrameTestHelpers::WebViewHelper webViewHelper(this); |
6640 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad(m_baseURL + "view
port-tiny.html", true, nullptr, &client, nullptr, configureAndroid); | 6640 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad(m_baseURL + "view
port-tiny.html", true, nullptr, &client, nullptr, configureAndroid); |
6641 int viewportWidth = 384; | 6641 int viewportWidth = 384; |
6642 int viewportHeight = 640; | 6642 int viewportHeight = 640; |
6643 client.m_screenInfo.rect.width = viewportWidth; | 6643 client.m_screenInfo.rect.width = viewportWidth; |
6644 client.m_screenInfo.rect.height = viewportHeight; | 6644 client.m_screenInfo.rect.height = viewportHeight; |
6645 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); | 6645 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); |
6646 webViewImpl->updateAllLifecyclePhases(); | 6646 webViewImpl->updateAllLifecyclePhases(); |
6647 | 6647 |
6648 LayoutViewItem layoutViewItem = webViewHelper.webViewImpl()->mainFrameImpl()
->frameView()->layoutViewItem(); | 6648 LayoutViewItem layoutViewItem = webViewHelper.webViewImpl()->mainFrameImpl()
->frameView()->layoutViewItem(); |
6649 Document* document = toWebLocalFrameImpl(webViewImpl->mainFrame())->frame()-
>document(); | 6649 Document* document = toWebLocalFrameImpl(webViewImpl->mainFrame())->frame()-
>document(); |
6650 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); | 6650 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); |
6651 Fullscreen::from(*document).requestFullscreen(*document->documentElement(),
Fullscreen::PrefixedRequest); | 6651 Fullscreen::from(*document).requestFullscreen(*document->documentElement(),
Fullscreen::PrefixedRequest); |
6652 webViewImpl->didEnterFullScreen(); | 6652 webViewImpl->didEnterFullscreen(); |
6653 webViewImpl->updateAllLifecyclePhases(); | 6653 webViewImpl->updateAllLifecyclePhases(); |
6654 EXPECT_EQ(384, layoutViewItem.logicalWidth().floor()); | 6654 EXPECT_EQ(384, layoutViewItem.logicalWidth().floor()); |
6655 EXPECT_EQ(640, layoutViewItem.logicalHeight().floor()); | 6655 EXPECT_EQ(640, layoutViewItem.logicalHeight().floor()); |
6656 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); | 6656 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); |
6657 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); | 6657 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); |
6658 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); | 6658 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); |
6659 | 6659 |
6660 viewportWidth = 640; | 6660 viewportWidth = 640; |
6661 viewportHeight = 384; | 6661 viewportHeight = 384; |
6662 client.m_screenInfo.rect.width = viewportWidth; | 6662 client.m_screenInfo.rect.width = viewportWidth; |
6663 client.m_screenInfo.rect.height = viewportHeight; | 6663 client.m_screenInfo.rect.height = viewportHeight; |
6664 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); | 6664 webViewHelper.resize(WebSize(viewportWidth, viewportHeight)); |
6665 webViewImpl->updateAllLifecyclePhases(); | 6665 webViewImpl->updateAllLifecyclePhases(); |
6666 EXPECT_EQ(640, layoutViewItem.logicalWidth().floor()); | 6666 EXPECT_EQ(640, layoutViewItem.logicalWidth().floor()); |
6667 EXPECT_EQ(384, layoutViewItem.logicalHeight().floor()); | 6667 EXPECT_EQ(384, layoutViewItem.logicalHeight().floor()); |
6668 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); | 6668 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); |
6669 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); | 6669 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); |
6670 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); | 6670 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); |
6671 | 6671 |
6672 webViewImpl->didExitFullScreen(); | 6672 webViewImpl->didExitFullscreen(); |
6673 webViewImpl->updateAllLifecyclePhases(); | 6673 webViewImpl->updateAllLifecyclePhases(); |
6674 EXPECT_EQ(320, layoutViewItem.logicalWidth().floor()); | 6674 EXPECT_EQ(320, layoutViewItem.logicalWidth().floor()); |
6675 EXPECT_EQ(192, layoutViewItem.logicalHeight().floor()); | 6675 EXPECT_EQ(192, layoutViewItem.logicalHeight().floor()); |
6676 EXPECT_FLOAT_EQ(2, webViewImpl->pageScaleFactor()); | 6676 EXPECT_FLOAT_EQ(2, webViewImpl->pageScaleFactor()); |
6677 EXPECT_FLOAT_EQ(2, webViewImpl->minimumPageScaleFactor()); | 6677 EXPECT_FLOAT_EQ(2, webViewImpl->minimumPageScaleFactor()); |
6678 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); | 6678 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); |
6679 } | 6679 } |
6680 | 6680 |
6681 TEST_P(ParameterizedWebFrameTest, FullscreenRestoreScaleFactorUponExiting) | 6681 TEST_P(ParameterizedWebFrameTest, FullscreenRestoreScaleFactorUponExiting) |
6682 { | 6682 { |
(...skipping 18 matching lines...) Expand all Loading... |
6701 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); | 6701 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); |
6702 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); | 6702 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); |
6703 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); | 6703 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); |
6704 | 6704 |
6705 { | 6705 { |
6706 Document* document = toWebLocalFrameImpl(webViewImpl->mainFrame())->fram
e()->document(); | 6706 Document* document = toWebLocalFrameImpl(webViewImpl->mainFrame())->fram
e()->document(); |
6707 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); | 6707 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); |
6708 Fullscreen::from(*document).requestFullscreen(*document->body(), Fullscr
een::PrefixedRequest); | 6708 Fullscreen::from(*document).requestFullscreen(*document->body(), Fullscr
een::PrefixedRequest); |
6709 } | 6709 } |
6710 | 6710 |
6711 webViewImpl->didEnterFullScreen(); | 6711 webViewImpl->didEnterFullscreen(); |
6712 webViewImpl->updateAllLifecyclePhases(); | 6712 webViewImpl->updateAllLifecyclePhases(); |
6713 client.m_screenInfo.rect.width = screenSizeMinusStatusBars.width; | 6713 client.m_screenInfo.rect.width = screenSizeMinusStatusBars.width; |
6714 client.m_screenInfo.rect.height = screenSizeMinusStatusBars.height; | 6714 client.m_screenInfo.rect.height = screenSizeMinusStatusBars.height; |
6715 webViewHelper.resize(screenSizeMinusStatusBars); | 6715 webViewHelper.resize(screenSizeMinusStatusBars); |
6716 client.m_screenInfo.rect.width = screenSize.width; | 6716 client.m_screenInfo.rect.width = screenSize.width; |
6717 client.m_screenInfo.rect.height = screenSize.height; | 6717 client.m_screenInfo.rect.height = screenSize.height; |
6718 webViewHelper.resize(screenSize); | 6718 webViewHelper.resize(screenSize); |
6719 EXPECT_EQ(screenSize.width, layoutViewItem.logicalWidth().floor()); | 6719 EXPECT_EQ(screenSize.width, layoutViewItem.logicalWidth().floor()); |
6720 EXPECT_EQ(screenSize.height, layoutViewItem.logicalHeight().floor()); | 6720 EXPECT_EQ(screenSize.height, layoutViewItem.logicalHeight().floor()); |
6721 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); | 6721 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); |
6722 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); | 6722 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); |
6723 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); | 6723 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); |
6724 | 6724 |
6725 webViewImpl->didExitFullScreen(); | 6725 webViewImpl->didExitFullscreen(); |
6726 webViewImpl->updateAllLifecyclePhases(); | 6726 webViewImpl->updateAllLifecyclePhases(); |
6727 client.m_screenInfo.rect.width = screenSizeMinusStatusBars.width; | 6727 client.m_screenInfo.rect.width = screenSizeMinusStatusBars.width; |
6728 client.m_screenInfo.rect.height = screenSizeMinusStatusBars.height; | 6728 client.m_screenInfo.rect.height = screenSizeMinusStatusBars.height; |
6729 webViewHelper.resize(screenSizeMinusStatusBars); | 6729 webViewHelper.resize(screenSizeMinusStatusBars); |
6730 client.m_screenInfo.rect.width = screenSizeMinusStatusBarsMinusUrlBar.width; | 6730 client.m_screenInfo.rect.width = screenSizeMinusStatusBarsMinusUrlBar.width; |
6731 client.m_screenInfo.rect.height = screenSizeMinusStatusBarsMinusUrlBar.heigh
t; | 6731 client.m_screenInfo.rect.height = screenSizeMinusStatusBarsMinusUrlBar.heigh
t; |
6732 webViewHelper.resize(screenSizeMinusStatusBarsMinusUrlBar); | 6732 webViewHelper.resize(screenSizeMinusStatusBarsMinusUrlBar); |
6733 EXPECT_EQ(screenSizeMinusStatusBarsMinusUrlBar.width, layoutViewItem.logical
Width().floor()); | 6733 EXPECT_EQ(screenSizeMinusStatusBarsMinusUrlBar.width, layoutViewItem.logical
Width().floor()); |
6734 EXPECT_EQ(screenSizeMinusStatusBarsMinusUrlBar.height, layoutViewItem.logica
lHeight().floor()); | 6734 EXPECT_EQ(screenSizeMinusStatusBarsMinusUrlBar.height, layoutViewItem.logica
lHeight().floor()); |
6735 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); | 6735 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); |
(...skipping 29 matching lines...) Expand all Loading... |
6765 EXPECT_EQ(640, layoutViewItem.logicalHeight().floor()); | 6765 EXPECT_EQ(640, layoutViewItem.logicalHeight().floor()); |
6766 EXPECT_FLOAT_EQ(0.3125, webViewImpl->pageScaleFactor()); | 6766 EXPECT_FLOAT_EQ(0.3125, webViewImpl->pageScaleFactor()); |
6767 EXPECT_FLOAT_EQ(0.3125, webViewImpl->minimumPageScaleFactor()); | 6767 EXPECT_FLOAT_EQ(0.3125, webViewImpl->minimumPageScaleFactor()); |
6768 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); | 6768 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); |
6769 | 6769 |
6770 Document* document = | 6770 Document* document = |
6771 toWebLocalFrameImpl(webViewImpl->mainFrame())->frame()->document(); | 6771 toWebLocalFrameImpl(webViewImpl->mainFrame())->frame()->document(); |
6772 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); | 6772 UserGestureIndicator gesture(DefinitelyProcessingUserGesture); |
6773 Fullscreen::from(*document).requestFullscreen( | 6773 Fullscreen::from(*document).requestFullscreen( |
6774 *document->documentElement(), Fullscreen::PrefixedRequest); | 6774 *document->documentElement(), Fullscreen::PrefixedRequest); |
6775 webViewImpl->didEnterFullScreen(); | 6775 webViewImpl->didEnterFullscreen(); |
6776 webViewImpl->updateAllLifecyclePhases(); | 6776 webViewImpl->updateAllLifecyclePhases(); |
6777 | 6777 |
6778 // Entering fullscreen causes layout size and page scale limits to be | 6778 // Entering fullscreen causes layout size and page scale limits to be |
6779 // overridden. | 6779 // overridden. |
6780 EXPECT_EQ(100, layoutViewItem.logicalWidth().floor()); | 6780 EXPECT_EQ(100, layoutViewItem.logicalWidth().floor()); |
6781 EXPECT_EQ(200, layoutViewItem.logicalHeight().floor()); | 6781 EXPECT_EQ(200, layoutViewItem.logicalHeight().floor()); |
6782 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); | 6782 EXPECT_FLOAT_EQ(1.0, webViewImpl->pageScaleFactor()); |
6783 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); | 6783 EXPECT_FLOAT_EQ(1.0, webViewImpl->minimumPageScaleFactor()); |
6784 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); | 6784 EXPECT_FLOAT_EQ(1.0, webViewImpl->maximumPageScaleFactor()); |
6785 | 6785 |
6786 const char source[] = "<meta name=\"viewport\" content=\"width=200\">"; | 6786 const char source[] = "<meta name=\"viewport\" content=\"width=200\">"; |
6787 | 6787 |
6788 // Load a new page before exiting fullscreen. | 6788 // Load a new page before exiting fullscreen. |
6789 KURL testURL = toKURL("about:blank"); | 6789 KURL testURL = toKURL("about:blank"); |
6790 WebFrame* frame = webViewHelper.webView()->mainFrame(); | 6790 WebFrame* frame = webViewHelper.webView()->mainFrame(); |
6791 FrameTestHelpers::loadHTMLString(frame, source, testURL); | 6791 FrameTestHelpers::loadHTMLString(frame, source, testURL); |
6792 webViewImpl->didExitFullScreen(); | 6792 webViewImpl->didExitFullscreen(); |
6793 webViewImpl->updateAllLifecyclePhases(); | 6793 webViewImpl->updateAllLifecyclePhases(); |
6794 | 6794 |
6795 // Make sure the new page's layout size and scale factor limits aren't | 6795 // Make sure the new page's layout size and scale factor limits aren't |
6796 // overridden. | 6796 // overridden. |
6797 layoutViewItem = | 6797 layoutViewItem = |
6798 webViewImpl->mainFrameImpl()->frameView()->layoutViewItem(); | 6798 webViewImpl->mainFrameImpl()->frameView()->layoutViewItem(); |
6799 EXPECT_EQ(200, layoutViewItem.logicalWidth().floor()); | 6799 EXPECT_EQ(200, layoutViewItem.logicalWidth().floor()); |
6800 EXPECT_EQ(400, layoutViewItem.logicalHeight().floor()); | 6800 EXPECT_EQ(400, layoutViewItem.logicalHeight().floor()); |
6801 EXPECT_FLOAT_EQ(0.5, webViewImpl->minimumPageScaleFactor()); | 6801 EXPECT_FLOAT_EQ(0.5, webViewImpl->minimumPageScaleFactor()); |
6802 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); | 6802 EXPECT_FLOAT_EQ(5.0, webViewImpl->maximumPageScaleFactor()); |
(...skipping 2010 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8813 request.setRequestorOrigin(WebSecurityOrigin::createUnique()); | 8813 request.setRequestorOrigin(WebSecurityOrigin::createUnique()); |
8814 helper.webViewImpl()->mainFrame()->toWebLocalFrame()->loadRequest(request); | 8814 helper.webViewImpl()->mainFrame()->toWebLocalFrame()->loadRequest(request); |
8815 | 8815 |
8816 // Normally, the result of the JS url replaces the existing contents on the | 8816 // Normally, the result of the JS url replaces the existing contents on the |
8817 // Document. However, if the JS triggers a navigation, the contents should | 8817 // Document. However, if the JS triggers a navigation, the contents should |
8818 // not be replaced. | 8818 // not be replaced. |
8819 EXPECT_EQ("", toLocalFrame(helper.webViewImpl()->page()->mainFrame())->docum
ent()->documentElement()->innerText()); | 8819 EXPECT_EQ("", toLocalFrame(helper.webViewImpl()->page()->mainFrame())->docum
ent()->documentElement()->innerText()); |
8820 } | 8820 } |
8821 | 8821 |
8822 } // namespace blink | 8822 } // namespace blink |
OLD | NEW |