diff options
author | mnaganov@chromium.org <mnaganov@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-17 12:02:54 +0000 |
---|---|---|
committer | mnaganov@chromium.org <mnaganov@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-17 12:02:54 +0000 |
commit | 35a258e4bbdd37512c75a3695fe25a3129bbf504 (patch) | |
tree | 9a7e0ae60fab2b241b91ff928a9ad20a895906f2 /android_webview/javatests | |
parent | 6effee11459345a7e1e396fdb5990aded79cba99 (diff) | |
download | chromium_src-35a258e4bbdd37512c75a3695fe25a3129bbf504.zip chromium_src-35a258e4bbdd37512c75a3695fe25a3129bbf504.tar.gz chromium_src-35a258e4bbdd37512c75a3695fe25a3129bbf504.tar.bz2 |
[Android WebView] Never turn off viewport and fixed layout
This is to avoid skipping "meta viewport" tag processing.
For controlling wide viewport-related behavior, a corresponding
WebSetting has been added into Blink.
Review URL: https://codereview.chromium.org/14234002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@194576 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'android_webview/javatests')
5 files changed, 3 insertions, 49 deletions
diff --git a/android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientOnScaleChangedTest.java b/android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientOnScaleChangedTest.java index 905c456..eb3a22b 100644 --- a/android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientOnScaleChangedTest.java +++ b/android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientOnScaleChangedTest.java @@ -42,7 +42,6 @@ public class AwContentsClientOnScaleChangedTest extends AwTestBase { @DisabledTest public void testScaleUp() throws Throwable { getContentSettingsOnUiThread(mAwContents).setUseWideViewPort(true); - mAwContents.getSettings().setEnableFixedLayoutMode(true); loadDataSync(mAwContents, mContentsClient.getOnPageFinishedHelper(), CommonResources.ABOUT_HTML, "text/html", false); ContentViewCore core = mAwContents.getContentViewCore(); diff --git a/android_webview/javatests/src/org/chromium/android_webview/test/AwSettingsTest.java b/android_webview/javatests/src/org/chromium/android_webview/test/AwSettingsTest.java index 4487bbb..871f6ec2 100644 --- a/android_webview/javatests/src/org/chromium/android_webview/test/AwSettingsTest.java +++ b/android_webview/javatests/src/org/chromium/android_webview/test/AwSettingsTest.java @@ -938,7 +938,6 @@ public class AwSettingsTest extends AwTestBase { super(awContents, contentViewClient); // Font autosizing doesn't step in for narrow layout widths. mContentSettings.setUseWideViewPort(true); - mAwSettings.setEnableFixedLayoutMode(true); } @Override @@ -1225,7 +1224,6 @@ public class AwSettingsTest extends AwTestBase { @Override protected void setCurrentValue(Boolean value) { mContentSettings.setUseWideViewPort(value); - mAwSettings.setEnableFixedLayoutMode(value); } @Override @@ -1257,7 +1255,6 @@ public class AwSettingsTest extends AwTestBase { super(awContents, contentViewClient, true); mWithViewPortTag = withViewPortTag; mContentSettings.setUseWideViewPort(true); - mAwContents.getSettings().setEnableFixedLayoutMode(true); } @Override @@ -2344,8 +2341,8 @@ public class AwSettingsTest extends AwTestBase { settings.setJavaScriptEnabled(true); assertFalse(settings.getUseWideViewPort()); - // When UseWideViewPort is off, "meta viewport" tags are ignored, - // and the layout width is set to device width in CSS pixels. + // When UseWideViewPort is off, "width" setting of "meta viewport" + // tags is ignored, and the layout width is set to device width in CSS pixels. // Thus, all 3 pages will have the same body width. loadDataSync(awContents, onPageFinishedHelper, pageNoViewport, "text/html", false); int actualWidth = Integer.parseInt(getTitleOnUiThread(awContents)); @@ -2363,7 +2360,6 @@ public class AwSettingsTest extends AwTestBase { Math.abs(displayWidth - actualWidth) <= 1); settings.setUseWideViewPort(true); - awContents.getSettings().setEnableFixedLayoutMode(true); // When UseWideViewPort is on, "meta viewport" tag is used. // If there is no viewport tag, or width isn't specified, // then layout width is set to max(980, <device-width-in-DIP-pixels>) @@ -2398,7 +2394,6 @@ public class AwSettingsTest extends AwTestBase { assertEquals(initialScale, getScaleOnUiThread(awContents)); settings.setUseWideViewPort(true); - awContents.getSettings().setEnableFixedLayoutMode(true); loadDataSync(awContents, onPageFinishedHelper, page, "text/html", false); int onScaleChangedCallCount = contentClient.getOnScaleChangedHelper().getCallCount(); simulateDoubleTapCenterOfWebViewOnUiThread(testContainerView); @@ -2432,39 +2427,6 @@ public class AwSettingsTest extends AwTestBase { @SmallTest @Feature({"AndroidWebView", "Preferences"}) - // Verify that LoadViewOverviewMode doesn't affect pages with initial scale - // set in the viewport tag. - public void testLoadWithOverviewModeViewportScale() throws Throwable { - final TestAwContentsClient contentClient = new TestAwContentsClient(); - final AwTestContainerView testContainerView = - createAwTestContainerViewOnMainSync(contentClient); - final AwContents awContents = testContainerView.getAwContents(); - ContentSettings settings = getContentSettingsOnUiThread(awContents); - CallbackHelper onPageFinishedHelper = contentClient.getOnPageFinishedHelper(); - - final int pageScale = 2; - final String page = "<html><head>" + - "<meta name='viewport' content='width=3000, initial-scale=" + pageScale + - "' /></head>" + - "<body></body></html>"; - - assertFalse(settings.getUseWideViewPort()); - assertFalse(settings.getLoadWithOverviewMode()); - loadDataSync(awContents, onPageFinishedHelper, page, "text/html", false); - assertEquals(1.0f, getScaleOnUiThread(awContents)); - - settings.setUseWideViewPort(true); - awContents.getSettings().setEnableFixedLayoutMode(true); - settings.setLoadWithOverviewMode(true); - awContents.getSettings().resetScrollAndScaleState(); - int onScaleChangedCallCount = contentClient.getOnScaleChangedHelper().getCallCount(); - loadDataSync(awContents, onPageFinishedHelper, page, "text/html", false); - contentClient.getOnScaleChangedHelper().waitForCallback(onScaleChangedCallCount); - assertEquals((float)pageScale, getScaleOnUiThread(awContents)); - } - - @SmallTest - @Feature({"AndroidWebView", "Preferences"}) public void testSetInitialScale() throws Throwable { final TestAwContentsClient contentClient = new TestAwContentsClient(); final AwTestContainerView testContainerView = diff --git a/android_webview/javatests/src/org/chromium/android_webview/test/AwTargetDensityDpiTest.java b/android_webview/javatests/src/org/chromium/android_webview/test/AwTargetDensityDpiTest.java index 4bc3a07..5b9a56d 100644 --- a/android_webview/javatests/src/org/chromium/android_webview/test/AwTargetDensityDpiTest.java +++ b/android_webview/javatests/src/org/chromium/android_webview/test/AwTargetDensityDpiTest.java @@ -31,9 +31,6 @@ public class AwTargetDensityDpiTest extends AwTestBase { final String pageDpi100 = String.format(pageTemplate, "100"); settings.setJavaScriptEnabled(true); - // TODO(mnaganov): Should not be needed. See b/8487489. - settings.setUseWideViewPort(true); - awContents.getSettings().setEnableFixedLayoutMode(true); DeviceDisplayInfo deviceInfo = DeviceDisplayInfo.create(getInstrumentation().getTargetContext()); diff --git a/android_webview/javatests/src/org/chromium/android_webview/test/ContentViewZoomTest.java b/android_webview/javatests/src/org/chromium/android_webview/test/ContentViewZoomTest.java index ccfefbb..7b0e769 100644 --- a/android_webview/javatests/src/org/chromium/android_webview/test/ContentViewZoomTest.java +++ b/android_webview/javatests/src/org/chromium/android_webview/test/ContentViewZoomTest.java @@ -194,7 +194,6 @@ public class ContentViewZoomTest extends AwTestBase { private void runMagnificationTest(boolean supportZoom) throws Throwable { getContentSettingsOnUiThread(mAwContents).setUseWideViewPort(true); - mAwContents.getSettings().setEnableFixedLayoutMode(true); loadDataSync(mAwContents, mContentsClient.getOnPageFinishedHelper(), getZoomableHtml(), "text/html", false); // It takes some time for scaling to settle down. @@ -241,7 +240,6 @@ public class ContentViewZoomTest extends AwTestBase { public void testZoomUsingMultiTouch() throws Throwable { ContentSettings webSettings = getContentSettingsOnUiThread(mAwContents); webSettings.setUseWideViewPort(true); - mAwContents.getSettings().setEnableFixedLayoutMode(true); loadDataSync(mAwContents, mContentsClient.getOnPageFinishedHelper(), getZoomableHtml(), "text/html", false); @@ -265,7 +263,6 @@ public class ContentViewZoomTest extends AwTestBase { public void testZoomControls() throws Throwable { ContentSettings webSettings = getContentSettingsOnUiThread(mAwContents); webSettings.setUseWideViewPort(true); - mAwContents.getSettings().setEnableFixedLayoutMode(true); loadDataSync(mAwContents, mContentsClient.getOnPageFinishedHelper(), getZoomableHtml(), "text/html", false); @@ -291,7 +288,6 @@ public class ContentViewZoomTest extends AwTestBase { public void testZoomControlsOnNonZoomableContent() throws Throwable { ContentSettings webSettings = getContentSettingsOnUiThread(mAwContents); webSettings.setUseWideViewPort(true); - mAwContents.getSettings().setEnableFixedLayoutMode(true); loadDataSync(mAwContents, mContentsClient.getOnPageFinishedHelper(), getNonZoomableHtml(), "text/html", false); @@ -316,7 +312,6 @@ public class ContentViewZoomTest extends AwTestBase { public void testZoomControlsOnOrientationChange() throws Throwable { ContentSettings webSettings = getContentSettingsOnUiThread(mAwContents); webSettings.setUseWideViewPort(true); - mAwContents.getSettings().setEnableFixedLayoutMode(true); loadDataSync(mAwContents, mContentsClient.getOnPageFinishedHelper(), getZoomableHtml(), "text/html", false); diff --git a/android_webview/javatests/src/org/chromium/android_webview/test/WebKitHitTestTest.java b/android_webview/javatests/src/org/chromium/android_webview/test/WebKitHitTestTest.java index 52d2ec0..fc05f64 100644 --- a/android_webview/javatests/src/org/chromium/android_webview/test/WebKitHitTestTest.java +++ b/android_webview/javatests/src/org/chromium/android_webview/test/WebKitHitTestTest.java @@ -376,6 +376,7 @@ public class WebKitHitTestTest extends AwTestBase { String relImageSrc = "/nonexistent3.jpg"; String fullImageSrc = mWebServer.getResponseUrl(relImageSrc); String html = CommonResources.makeHtmlPageFrom( + "<meta name=\"viewport\" content=\"width=device-width,height=device-height\" />" + "<style type=\"text/css\">" + ".full_width { width:100%; position:absolute; }" + "</style>", |