| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "content/public/browser/host_zoom_map.h" | 5 #include "content/public/browser/host_zoom_map.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 250 | 250 |
| 251 content::WebContents* web_contents = | 251 content::WebContents* web_contents = |
| 252 browser()->tab_strip_model()->GetActiveWebContents(); | 252 browser()->tab_strip_model()->GetActiveWebContents(); |
| 253 | 253 |
| 254 HostZoomMap* host_zoom_map = HostZoomMap::GetForWebContents(web_contents); | 254 HostZoomMap* host_zoom_map = HostZoomMap::GetForWebContents(web_contents); |
| 255 | 255 |
| 256 // For the webview based sign-in code, the sign in page uses the default host | 256 // For the webview based sign-in code, the sign in page uses the default host |
| 257 // zoom map. | 257 // zoom map. |
| 258 HostZoomMap* default_profile_host_zoom_map = | 258 HostZoomMap* default_profile_host_zoom_map = |
| 259 HostZoomMap::GetDefaultForBrowserContext(browser()->profile()); | 259 HostZoomMap::GetDefaultForBrowserContext(browser()->profile()); |
| 260 // Since ChromeOS still uses IFrame-based signin, we should expect the | 260 EXPECT_EQ(host_zoom_map, default_profile_host_zoom_map); |
| 261 // storage partition to be different if Webview signin is not enabled. | |
| 262 if (switches::IsEnableWebviewBasedSignin()) | |
| 263 EXPECT_EQ(host_zoom_map, default_profile_host_zoom_map); | |
| 264 else | |
| 265 EXPECT_NE(host_zoom_map, default_profile_host_zoom_map); | |
| 266 } | |
| 267 | |
| 268 class HostZoomMapIframeSigninBrowserTest : public HostZoomMapBrowserTest { | |
| 269 public: | |
| 270 void SetUpCommandLine(base::CommandLine* command_line) override { | |
| 271 command_line->AppendSwitch(switches::kEnableIframeBasedSignin); | |
| 272 } | |
| 273 }; | |
| 274 | |
| 275 // Regression test for crbug.com/435017. | |
| 276 IN_PROC_BROWSER_TEST_F(HostZoomMapIframeSigninBrowserTest, | |
| 277 EventsForNonDefaultStoragePartition) { | |
| 278 ZoomLevelChangeObserver observer(browser()->profile()); | |
| 279 // TODO(wjmaclean): Make this test more general by implementing a way to | |
| 280 // force a generic URL to be loaded in a non-default storage partition. This | |
| 281 // test currently relies on the signin page being loaded into a non-default | |
| 282 // storage partition (and verifies this is the case), but ultimately it would | |
| 283 // be better not to rely on what the signin page is doing. | |
| 284 GURL test_url = ConstructTestServerURL(chrome::kChromeUIChromeSigninURL); | |
| 285 std::string test_host(test_url.host()); | |
| 286 std::string test_scheme(test_url.scheme()); | |
| 287 ui_test_utils::NavigateToURL(browser(), test_url); | |
| 288 | |
| 289 content::WebContents* web_contents = | |
| 290 browser()->tab_strip_model()->GetActiveWebContents(); | |
| 291 | |
| 292 // We are forcing non-webview based signin, so we expect the signin page to | |
| 293 // be in a different storage partition, and hence a different HostZoomMap. | |
| 294 HostZoomMap* host_zoom_map = HostZoomMap::GetForWebContents(web_contents); | |
| 295 | |
| 296 EXPECT_FALSE(switches::IsEnableWebviewBasedSignin()); | |
| 297 HostZoomMap* default_profile_host_zoom_map = | |
| 298 HostZoomMap::GetDefaultForBrowserContext(browser()->profile()); | |
| 299 EXPECT_NE(host_zoom_map, default_profile_host_zoom_map); | |
| 300 | |
| 301 double new_zoom_level = | |
| 302 host_zoom_map->GetZoomLevelForHostAndScheme(test_scheme, test_host) + 0.5; | |
| 303 host_zoom_map->SetZoomLevelForHostAndScheme(test_scheme, test_host, | |
| 304 new_zoom_level); | |
| 305 observer.BlockUntilZoomLevelForHostHasChanged(test_host); | |
| 306 EXPECT_EQ(new_zoom_level, host_zoom_map->GetZoomLevelForHostAndScheme( | |
| 307 test_scheme, test_host)); | |
| 308 } | 261 } |
| 309 | 262 |
| 310 // Regression test for crbug.com/364399. | 263 // Regression test for crbug.com/364399. |
| 311 IN_PROC_BROWSER_TEST_F(HostZoomMapBrowserTest, ToggleDefaultZoomLevel) { | 264 IN_PROC_BROWSER_TEST_F(HostZoomMapBrowserTest, ToggleDefaultZoomLevel) { |
| 312 const double default_zoom_level = content::ZoomFactorToZoomLevel(1.5); | 265 const double default_zoom_level = content::ZoomFactorToZoomLevel(1.5); |
| 313 | 266 |
| 314 const char kTestURLTemplate1[] = "http://host1:%u/"; | 267 const char kTestURLTemplate1[] = "http://host1:%u/"; |
| 315 const char kTestURLTemplate2[] = "http://host2:%u/"; | 268 const char kTestURLTemplate2[] = "http://host2:%u/"; |
| 316 | 269 |
| 317 ZoomLevelChangeObserver observer(browser()->profile()); | 270 ZoomLevelChangeObserver observer(browser()->profile()); |
| (...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 425 HostZoomMap::GetDefaultForBrowserContext(child_profile); | 378 HostZoomMap::GetDefaultForBrowserContext(child_profile); |
| 426 ASSERT_TRUE(parent_host_zoom_map); | 379 ASSERT_TRUE(parent_host_zoom_map); |
| 427 ASSERT_TRUE(child_host_zoom_map); | 380 ASSERT_TRUE(child_host_zoom_map); |
| 428 EXPECT_NE(parent_host_zoom_map, child_host_zoom_map); | 381 EXPECT_NE(parent_host_zoom_map, child_host_zoom_map); |
| 429 EXPECT_NE(new_default_zoom_level, child_host_zoom_map->GetDefaultZoomLevel()); | 382 EXPECT_NE(new_default_zoom_level, child_host_zoom_map->GetDefaultZoomLevel()); |
| 430 | 383 |
| 431 parent_profile->GetZoomLevelPrefs()->SetDefaultZoomLevelPref( | 384 parent_profile->GetZoomLevelPrefs()->SetDefaultZoomLevelPref( |
| 432 new_default_zoom_level); | 385 new_default_zoom_level); |
| 433 EXPECT_EQ(new_default_zoom_level, child_host_zoom_map->GetDefaultZoomLevel()); | 386 EXPECT_EQ(new_default_zoom_level, child_host_zoom_map->GetDefaultZoomLevel()); |
| 434 } | 387 } |
| OLD | NEW |