Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(494)

Side by Side Diff: Source/web/tests/WebFrameTest.cpp

Issue 344203003: Replace loadWithOverviewMode settings with calls to shrinksViewportContentToFit (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « Source/web/WebViewImpl.cpp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 1031 matching lines...) Expand 10 before | Expand all | Expand 10 after
1042 EXPECT_EQ(0.25f, webViewHelper.webView()->pageScaleFactor()); 1042 EXPECT_EQ(0.25f, webViewHelper.webView()->pageScaleFactor());
1043 1043
1044 WebCore::Document* document = toLocalFrame(webViewHelper.webViewImpl()->page ()->mainFrame())->document(); 1044 WebCore::Document* document = toLocalFrame(webViewHelper.webViewImpl()->page ()->mainFrame())->document();
1045 WebCore::ViewportDescription description = document->viewportDescription(); 1045 WebCore::ViewportDescription description = document->viewportDescription();
1046 description.zoom = 2; 1046 description.zoom = 2;
1047 document->setViewportDescription(description); 1047 document->setViewportDescription(description);
1048 webViewHelper.webView()->layout(); 1048 webViewHelper.webView()->layout();
1049 EXPECT_EQ(2, webViewHelper.webView()->pageScaleFactor()); 1049 EXPECT_EQ(2, webViewHelper.webView()->pageScaleFactor());
1050 } 1050 }
1051 1051
1052 TEST_F(WebFrameTest, setLoadWithOverviewModeToFalse) 1052 TEST_F(WebFrameTest, setLoadWithoutShrinksViewportContentToFit)
1053 { 1053 {
1054 UseMockScrollbarSettings mockScrollbarSettings; 1054 UseMockScrollbarSettings mockScrollbarSettings;
1055 registerMockedHttpURLLoad("viewport-auto-initial-scale.html"); 1055 registerMockedHttpURLLoad("viewport-auto-initial-scale.html");
1056 1056
1057 FixedLayoutTestWebViewClient client; 1057 FixedLayoutTestWebViewClient client;
1058 client.m_screenInfo.deviceScaleFactor = 1; 1058 client.m_screenInfo.deviceScaleFactor = 1;
1059 int viewportWidth = 640; 1059 int viewportWidth = 640;
1060 int viewportHeight = 480; 1060 int viewportHeight = 480;
1061 1061
1062 FrameTestHelpers::WebViewHelper webViewHelper; 1062 FrameTestHelpers::WebViewHelper webViewHelper;
1063 webViewHelper.initializeAndLoad(m_baseURL + "viewport-auto-initial-scale.htm l", true, 0, &client, enableViewportSettings); 1063 webViewHelper.initializeAndLoad(m_baseURL + "viewport-auto-initial-scale.htm l", true, 0, &client, enableViewportSettings);
1064 webViewHelper.webView()->settings()->setWideViewportQuirkEnabled(true); 1064 webViewHelper.webView()->settings()->setWideViewportQuirkEnabled(true);
1065 webViewHelper.webView()->settings()->setLoadWithOverviewMode(false); 1065 webViewHelper.webView()->settings()->setShrinksViewportContentToFit(false);
1066 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight)); 1066 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight));
1067 1067
1068 // The page must be displayed at 100% zoom. 1068 // The page must be displayed at 100% zoom.
1069 EXPECT_EQ(1.0f, webViewHelper.webView()->pageScaleFactor()); 1069 EXPECT_EQ(1.0f, webViewHelper.webView()->pageScaleFactor());
1070 } 1070 }
1071 1071
1072 TEST_F(WebFrameTest, SetLoadWithOverviewModeToFalseAndNoWideViewport) 1072 TEST_F(WebFrameTest, SetLoadWithoutShrinksViewportContentToFitAndNoWideViewport)
1073 { 1073 {
1074 UseMockScrollbarSettings mockScrollbarSettings; 1074 UseMockScrollbarSettings mockScrollbarSettings;
1075 registerMockedHttpURLLoad("large-div.html"); 1075 registerMockedHttpURLLoad("large-div.html");
1076 1076
1077 FixedLayoutTestWebViewClient client; 1077 FixedLayoutTestWebViewClient client;
1078 client.m_screenInfo.deviceScaleFactor = 1; 1078 client.m_screenInfo.deviceScaleFactor = 1;
1079 int viewportWidth = 640; 1079 int viewportWidth = 640;
1080 int viewportHeight = 480; 1080 int viewportHeight = 480;
1081 1081
1082 FrameTestHelpers::WebViewHelper webViewHelper; 1082 FrameTestHelpers::WebViewHelper webViewHelper;
1083 webViewHelper.initializeAndLoad(m_baseURL + "large-div.html", true, 0, &clie nt, enableViewportSettings); 1083 webViewHelper.initializeAndLoad(m_baseURL + "large-div.html", true, 0, &clie nt, enableViewportSettings);
1084 webViewHelper.webView()->settings()->setLoadWithOverviewMode(false); 1084 webViewHelper.webView()->settings()->setShrinksViewportContentToFit(false);
1085 webViewHelper.webView()->settings()->setWideViewportQuirkEnabled(true); 1085 webViewHelper.webView()->settings()->setWideViewportQuirkEnabled(true);
1086 webViewHelper.webView()->settings()->setUseWideViewport(false); 1086 webViewHelper.webView()->settings()->setUseWideViewport(false);
1087 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight)); 1087 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight));
1088 1088
1089 // The page must be displayed at 100% zoom, despite that it hosts a wide div element. 1089 // The page must be displayed at 100% zoom, despite that it hosts a wide div element.
1090 EXPECT_EQ(1.0f, webViewHelper.webView()->pageScaleFactor()); 1090 EXPECT_EQ(1.0f, webViewHelper.webView()->pageScaleFactor());
1091 } 1091 }
1092 1092
1093 TEST_F(WebFrameTest, NoWideViewportIgnoresPageViewportWidth) 1093 TEST_F(WebFrameTest, NoWideViewportIgnoresPageViewportWidth)
1094 { 1094 {
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
1187 webViewHelper.initializeAndLoad(m_baseURL + "viewport-2x-initial-scale.html" , true, 0, &client, enableViewportSettings); 1187 webViewHelper.initializeAndLoad(m_baseURL + "viewport-2x-initial-scale.html" , true, 0, &client, enableViewportSettings);
1188 applyViewportStyleOverride(&webViewHelper); 1188 applyViewportStyleOverride(&webViewHelper);
1189 webViewHelper.webView()->settings()->setWideViewportQuirkEnabled(true); 1189 webViewHelper.webView()->settings()->setWideViewportQuirkEnabled(true);
1190 webViewHelper.webView()->settings()->setUseWideViewport(true); 1190 webViewHelper.webView()->settings()->setUseWideViewport(true);
1191 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight)); 1191 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight));
1192 1192
1193 EXPECT_EQ(980, webViewHelper.webViewImpl()->mainFrameImpl()->frameView()->co ntentsSize().width()); 1193 EXPECT_EQ(980, webViewHelper.webViewImpl()->mainFrameImpl()->frameView()->co ntentsSize().width());
1194 EXPECT_EQ(980.0 / viewportWidth * viewportHeight, webViewHelper.webViewImpl( )->mainFrameImpl()->frameView()->contentsSize().height()); 1194 EXPECT_EQ(980.0 / viewportWidth * viewportHeight, webViewHelper.webViewImpl( )->mainFrameImpl()->frameView()->contentsSize().height());
1195 } 1195 }
1196 1196
1197 TEST_F(WebFrameTest, PageViewportInitialScaleOverridesLoadWithOverviewMode) 1197 TEST_F(WebFrameTest, PageViewportInitialScaleOverridesShrinksViewportContentToFi t)
1198 { 1198 {
1199 UseMockScrollbarSettings mockScrollbarSettings; 1199 UseMockScrollbarSettings mockScrollbarSettings;
1200 registerMockedHttpURLLoad("viewport-wide-2x-initial-scale.html"); 1200 registerMockedHttpURLLoad("viewport-wide-2x-initial-scale.html");
1201 1201
1202 FixedLayoutTestWebViewClient client; 1202 FixedLayoutTestWebViewClient client;
1203 client.m_screenInfo.deviceScaleFactor = 1; 1203 client.m_screenInfo.deviceScaleFactor = 1;
1204 int viewportWidth = 640; 1204 int viewportWidth = 640;
1205 int viewportHeight = 480; 1205 int viewportHeight = 480;
1206 1206
1207 FrameTestHelpers::WebViewHelper webViewHelper; 1207 FrameTestHelpers::WebViewHelper webViewHelper;
1208 webViewHelper.initializeAndLoad(m_baseURL + "viewport-wide-2x-initial-scale. html", true, 0, &client, enableViewportSettings); 1208 webViewHelper.initializeAndLoad(m_baseURL + "viewport-wide-2x-initial-scale. html", true, 0, &client, enableViewportSettings);
1209 webViewHelper.webView()->settings()->setLoadWithOverviewMode(false); 1209 webViewHelper.webView()->settings()->setShrinksViewportContentToFit(false);
1210 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight)); 1210 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight));
1211 1211
1212 // The page must be displayed at 200% zoom, as specified in its viewport met a tag. 1212 // The page must be displayed at 200% zoom, as specified in its viewport met a tag.
1213 EXPECT_EQ(2.0f, webViewHelper.webView()->pageScaleFactor()); 1213 EXPECT_EQ(2.0f, webViewHelper.webView()->pageScaleFactor());
1214 } 1214 }
1215 1215
1216 TEST_F(WebFrameTest, setInitialPageScaleFactorPermanently) 1216 TEST_F(WebFrameTest, setInitialPageScaleFactorPermanently)
1217 { 1217 {
1218 UseMockScrollbarSettings mockScrollbarSettings; 1218 UseMockScrollbarSettings mockScrollbarSettings;
1219 1219
1220 registerMockedHttpURLLoad("fixed_layout.html"); 1220 registerMockedHttpURLLoad("fixed_layout.html");
1221 1221
1222 FixedLayoutTestWebViewClient client; 1222 FixedLayoutTestWebViewClient client;
1223 client.m_screenInfo.deviceScaleFactor = 1; 1223 client.m_screenInfo.deviceScaleFactor = 1;
1224 float enforcedPageScaleFactor = 2.0f; 1224 float enforcedPageScaleFactor = 2.0f;
1225 1225
1226 FrameTestHelpers::WebViewHelper webViewHelper; 1226 FrameTestHelpers::WebViewHelper webViewHelper;
1227 webViewHelper.initializeAndLoad(m_baseURL + "fixed_layout.html", true, 0, &c lient, enableViewportSettings); 1227 webViewHelper.initializeAndLoad(m_baseURL + "fixed_layout.html", true, 0, &c lient, enableViewportSettings);
1228 applyViewportStyleOverride(&webViewHelper); 1228 applyViewportStyleOverride(&webViewHelper);
1229 webViewHelper.webView()->settings()->setWideViewportQuirkEnabled(true); 1229 webViewHelper.webView()->settings()->setWideViewportQuirkEnabled(true);
1230 webViewHelper.webView()->settings()->setLoadWithOverviewMode(false); 1230 webViewHelper.webView()->settings()->setShrinksViewportContentToFit(false);
1231 webViewHelper.webView()->setInitialPageScaleOverride(enforcedPageScaleFactor ); 1231 webViewHelper.webView()->setInitialPageScaleOverride(enforcedPageScaleFactor );
1232 webViewHelper.webView()->layout(); 1232 webViewHelper.webView()->layout();
1233 1233
1234 EXPECT_EQ(enforcedPageScaleFactor, webViewHelper.webView()->pageScaleFactor( )); 1234 EXPECT_EQ(enforcedPageScaleFactor, webViewHelper.webView()->pageScaleFactor( ));
1235 1235
1236 int viewportWidth = 640; 1236 int viewportWidth = 640;
1237 int viewportHeight = 480; 1237 int viewportHeight = 480;
1238 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight)); 1238 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight));
1239 webViewHelper.webView()->layout(); 1239 webViewHelper.webView()->layout();
1240 1240
1241 EXPECT_EQ(enforcedPageScaleFactor, webViewHelper.webView()->pageScaleFactor( )); 1241 EXPECT_EQ(enforcedPageScaleFactor, webViewHelper.webView()->pageScaleFactor( ));
1242 1242
1243 webViewHelper.webView()->setInitialPageScaleOverride(-1); 1243 webViewHelper.webView()->setInitialPageScaleOverride(-1);
1244 webViewHelper.webView()->layout(); 1244 webViewHelper.webView()->layout();
1245 EXPECT_EQ(1.0, webViewHelper.webView()->pageScaleFactor()); 1245 EXPECT_EQ(1.0, webViewHelper.webView()->pageScaleFactor());
1246 } 1246 }
1247 1247
1248 TEST_F(WebFrameTest, PermanentInitialPageScaleFactorOverridesLoadWithOverviewMod e) 1248 TEST_F(WebFrameTest, PermanentInitialPageScaleFactorOverridesLoadWithShrinksView portContentToFit)
1249 { 1249 {
1250 UseMockScrollbarSettings mockScrollbarSettings; 1250 UseMockScrollbarSettings mockScrollbarSettings;
1251 registerMockedHttpURLLoad("viewport-auto-initial-scale.html"); 1251 registerMockedHttpURLLoad("viewport-auto-initial-scale.html");
1252 1252
1253 FixedLayoutTestWebViewClient client; 1253 FixedLayoutTestWebViewClient client;
1254 client.m_screenInfo.deviceScaleFactor = 1; 1254 client.m_screenInfo.deviceScaleFactor = 1;
1255 int viewportWidth = 640; 1255 int viewportWidth = 640;
1256 int viewportHeight = 480; 1256 int viewportHeight = 480;
1257 float enforcedPageScaleFactor = 0.5f; 1257 float enforcedPageScaleFactor = 0.5f;
1258 1258
1259 FrameTestHelpers::WebViewHelper webViewHelper; 1259 FrameTestHelpers::WebViewHelper webViewHelper;
1260 webViewHelper.initializeAndLoad(m_baseURL + "viewport-auto-initial-scale.htm l", true, 0, &client, enableViewportSettings); 1260 webViewHelper.initializeAndLoad(m_baseURL + "viewport-auto-initial-scale.htm l", true, 0, &client, enableViewportSettings);
1261 webViewHelper.webView()->settings()->setLoadWithOverviewMode(false); 1261 webViewHelper.webView()->settings()->setShrinksViewportContentToFit(false);
1262 webViewHelper.webView()->setInitialPageScaleOverride(enforcedPageScaleFactor ); 1262 webViewHelper.webView()->setInitialPageScaleOverride(enforcedPageScaleFactor );
1263 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight)); 1263 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight));
1264 1264
1265 EXPECT_EQ(enforcedPageScaleFactor, webViewHelper.webView()->pageScaleFactor( )); 1265 EXPECT_EQ(enforcedPageScaleFactor, webViewHelper.webView()->pageScaleFactor( ));
1266 } 1266 }
1267 1267
1268 TEST_F(WebFrameTest, PermanentInitialPageScaleFactorOverridesPageViewportInitial Scale) 1268 TEST_F(WebFrameTest, PermanentInitialPageScaleFactorOverridesPageViewportInitial Scale)
1269 { 1269 {
1270 UseMockScrollbarSettings mockScrollbarSettings; 1270 UseMockScrollbarSettings mockScrollbarSettings;
1271 registerMockedHttpURLLoad("viewport-wide-2x-initial-scale.html"); 1271 registerMockedHttpURLLoad("viewport-wide-2x-initial-scale.html");
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
1327 FixedLayoutTestWebViewClient client; 1327 FixedLayoutTestWebViewClient client;
1328 client.m_screenInfo.deviceScaleFactor = 1; 1328 client.m_screenInfo.deviceScaleFactor = 1;
1329 int viewportWidth = 640; 1329 int viewportWidth = 640;
1330 int viewportHeight = 480; 1330 int viewportHeight = 480;
1331 float enforcedPageScaleFactor = 0.5; 1331 float enforcedPageScaleFactor = 0.5;
1332 1332
1333 FrameTestHelpers::WebViewHelper webViewHelper; 1333 FrameTestHelpers::WebViewHelper webViewHelper;
1334 webViewHelper.initializeAndLoad("about:blank", true, 0, &client, enableViewp ortSettings); 1334 webViewHelper.initializeAndLoad("about:blank", true, 0, &client, enableViewp ortSettings);
1335 webViewHelper.webView()->settings()->setWideViewportQuirkEnabled(true); 1335 webViewHelper.webView()->settings()->setWideViewportQuirkEnabled(true);
1336 webViewHelper.webView()->settings()->setUseWideViewport(false); 1336 webViewHelper.webView()->settings()->setUseWideViewport(false);
1337 webViewHelper.webView()->settings()->setLoadWithOverviewMode(false); 1337 webViewHelper.webView()->settings()->setShrinksViewportContentToFit(false);
1338 webViewHelper.webView()->setInitialPageScaleOverride(enforcedPageScaleFactor ); 1338 webViewHelper.webView()->setInitialPageScaleOverride(enforcedPageScaleFactor );
1339 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight)); 1339 webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight));
1340 1340
1341 EXPECT_EQ(viewportWidth / enforcedPageScaleFactor, webViewHelper.webViewImpl ()->mainFrameImpl()->frameView()->contentsSize().width()); 1341 EXPECT_EQ(viewportWidth / enforcedPageScaleFactor, webViewHelper.webViewImpl ()->mainFrameImpl()->frameView()->contentsSize().width());
1342 EXPECT_EQ(enforcedPageScaleFactor, webViewHelper.webView()->pageScaleFactor( )); 1342 EXPECT_EQ(enforcedPageScaleFactor, webViewHelper.webView()->pageScaleFactor( ));
1343 } 1343 }
1344 1344
1345 TEST_F(WebFrameTest, WideViewportInitialScaleDoesNotExpandFixedLayoutWidth) 1345 TEST_F(WebFrameTest, WideViewportInitialScaleDoesNotExpandFixedLayoutWidth)
1346 { 1346 {
1347 UseMockScrollbarSettings mockScrollbarSettings; 1347 UseMockScrollbarSettings mockScrollbarSettings;
(...skipping 4221 matching lines...) Expand 10 before | Expand all | Expand 10 after
5569 { 5569 {
5570 registerMockedHttpURLLoad("brand_color_test.html"); 5570 registerMockedHttpURLLoad("brand_color_test.html");
5571 FrameTestHelpers::WebViewHelper webViewHelper; 5571 FrameTestHelpers::WebViewHelper webViewHelper;
5572 BrandColorTestWebFrameClient client; 5572 BrandColorTestWebFrameClient client;
5573 webViewHelper.initializeAndLoad(m_baseURL + "brand_color_test.html", false, &client); 5573 webViewHelper.initializeAndLoad(m_baseURL + "brand_color_test.html", false, &client);
5574 EXPECT_TRUE(client.didNotify()); 5574 EXPECT_TRUE(client.didNotify());
5575 EXPECT_EQ(0xff0000ff, webViewHelper.webViewImpl()->mainFrameImpl()->document ().brandColor()); 5575 EXPECT_EQ(0xff0000ff, webViewHelper.webViewImpl()->mainFrameImpl()->document ().brandColor());
5576 } 5576 }
5577 5577
5578 } // namespace 5578 } // namespace
OLDNEW
« no previous file with comments | « Source/web/WebViewImpl.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698