OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "chrome/browser/chromeos/display/display_preferences.h" | 5 #include "chrome/browser/chromeos/display/display_preferences.h" |
6 | 6 |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 #include <string> | 8 #include <string> |
9 #include <utility> | 9 #include <utility> |
10 #include <vector> | 10 #include <vector> |
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
262 display_manager->SetColorCalibrationProfile(id1, ui::COLOR_PROFILE_DYNAMIC); | 262 display_manager->SetColorCalibrationProfile(id1, ui::COLOR_PROFILE_DYNAMIC); |
263 display_manager->SetColorCalibrationProfile(id2, ui::COLOR_PROFILE_DYNAMIC); | 263 display_manager->SetColorCalibrationProfile(id2, ui::COLOR_PROFILE_DYNAMIC); |
264 | 264 |
265 LoggedInAsUser(); | 265 LoggedInAsUser(); |
266 ash::DisplayLayout layout(ash::DisplayLayout::TOP, 10); | 266 ash::DisplayLayout layout(ash::DisplayLayout::TOP, 10); |
267 display_manager->SetLayoutForCurrentDisplays(layout); | 267 display_manager->SetLayoutForCurrentDisplays(layout); |
268 StoreDisplayLayoutPrefForTest( | 268 StoreDisplayLayoutPrefForTest( |
269 id1, dummy_id, ash::DisplayLayout(ash::DisplayLayout::LEFT, 20)); | 269 id1, dummy_id, ash::DisplayLayout(ash::DisplayLayout::LEFT, 20)); |
270 // Can't switch to a display that does not exist. | 270 // Can't switch to a display that does not exist. |
271 window_tree_host_manager->SetPrimaryDisplayId(dummy_id); | 271 window_tree_host_manager->SetPrimaryDisplayId(dummy_id); |
272 EXPECT_NE(dummy_id, ash::Shell::GetScreen()->GetPrimaryDisplay().id()); | 272 EXPECT_NE(dummy_id, gfx::Screen::GetScreen()->GetPrimaryDisplay().id()); |
273 | 273 |
274 window_tree_host_manager->SetOverscanInsets(id1, gfx::Insets(10, 11, 12, 13)); | 274 window_tree_host_manager->SetOverscanInsets(id1, gfx::Insets(10, 11, 12, 13)); |
275 display_manager->SetDisplayRotation(id1, gfx::Display::ROTATE_90, | 275 display_manager->SetDisplayRotation(id1, gfx::Display::ROTATE_90, |
276 gfx::Display::ROTATION_SOURCE_USER); | 276 gfx::Display::ROTATION_SOURCE_USER); |
277 EXPECT_TRUE(ash::SetDisplayUIScale(id1, 1.25f)); | 277 EXPECT_TRUE(ash::SetDisplayUIScale(id1, 1.25f)); |
278 EXPECT_FALSE(ash::SetDisplayUIScale(id2, 1.25f)); | 278 EXPECT_FALSE(ash::SetDisplayUIScale(id2, 1.25f)); |
279 | 279 |
280 const base::DictionaryValue* displays = | 280 const base::DictionaryValue* displays = |
281 local_state()->GetDictionary(prefs::kSecondaryDisplays); | 281 local_state()->GetDictionary(prefs::kSecondaryDisplays); |
282 const base::DictionaryValue* layout_value = NULL; | 282 const base::DictionaryValue* layout_value = NULL; |
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
467 EXPECT_TRUE(property->GetInteger("width", &width)); | 467 EXPECT_TRUE(property->GetInteger("width", &width)); |
468 EXPECT_TRUE(property->GetInteger("height", &height)); | 468 EXPECT_TRUE(property->GetInteger("height", &height)); |
469 EXPECT_EQ(500, width); | 469 EXPECT_EQ(500, width); |
470 EXPECT_EQ(400, height); | 470 EXPECT_EQ(400, height); |
471 } | 471 } |
472 | 472 |
473 TEST_F(DisplayPreferencesTest, PreventStore) { | 473 TEST_F(DisplayPreferencesTest, PreventStore) { |
474 ResolutionNotificationController::SuppressTimerForTest(); | 474 ResolutionNotificationController::SuppressTimerForTest(); |
475 LoggedInAsUser(); | 475 LoggedInAsUser(); |
476 UpdateDisplay("400x300#500x400|400x300|300x200"); | 476 UpdateDisplay("400x300#500x400|400x300|300x200"); |
477 int64_t id = ash::Shell::GetScreen()->GetPrimaryDisplay().id(); | 477 int64_t id = gfx::Screen::GetScreen()->GetPrimaryDisplay().id(); |
478 // Set display's resolution in single display. It creates the notification and | 478 // Set display's resolution in single display. It creates the notification and |
479 // display preferences should not stored meanwhile. | 479 // display preferences should not stored meanwhile. |
480 ash::Shell* shell = ash::Shell::GetInstance(); | 480 ash::Shell* shell = ash::Shell::GetInstance(); |
481 ash::DisplayMode old_mode; | 481 ash::DisplayMode old_mode; |
482 ash::DisplayMode new_mode; | 482 ash::DisplayMode new_mode; |
483 old_mode.size = gfx::Size(400, 300); | 483 old_mode.size = gfx::Size(400, 300); |
484 new_mode.size = gfx::Size(500, 400); | 484 new_mode.size = gfx::Size(500, 400); |
485 if (shell->display_manager()->SetDisplayMode(id, new_mode)) { | 485 if (shell->display_manager()->SetDisplayMode(id, new_mode)) { |
486 shell->resolution_notification_controller()->PrepareNotification( | 486 shell->resolution_notification_controller()->PrepareNotification( |
487 id, old_mode, new_mode, base::Closure()); | 487 id, old_mode, new_mode, base::Closure()); |
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
583 display_manager->GetDisplayInfo(id1).color_profile()); | 583 display_manager->GetDisplayInfo(id1).color_profile()); |
584 } | 584 } |
585 | 585 |
586 TEST_F(DisplayPreferencesTest, DontStoreInGuestMode) { | 586 TEST_F(DisplayPreferencesTest, DontStoreInGuestMode) { |
587 ash::WindowTreeHostManager* window_tree_host_manager = | 587 ash::WindowTreeHostManager* window_tree_host_manager = |
588 ash::Shell::GetInstance()->window_tree_host_manager(); | 588 ash::Shell::GetInstance()->window_tree_host_manager(); |
589 | 589 |
590 UpdateDisplay("200x200*2,200x200"); | 590 UpdateDisplay("200x200*2,200x200"); |
591 | 591 |
592 LoggedInAsGuest(); | 592 LoggedInAsGuest(); |
593 int64_t id1 = ash::Shell::GetScreen()->GetPrimaryDisplay().id(); | 593 int64_t id1 = gfx::Screen::GetScreen()->GetPrimaryDisplay().id(); |
594 ash::test::ScopedSetInternalDisplayId set_internal(id1); | 594 ash::test::ScopedSetInternalDisplayId set_internal(id1); |
595 int64_t id2 = ash::ScreenUtil::GetSecondaryDisplay().id(); | 595 int64_t id2 = ash::ScreenUtil::GetSecondaryDisplay().id(); |
596 ash::DisplayManager* display_manager = | 596 ash::DisplayManager* display_manager = |
597 ash::Shell::GetInstance()->display_manager(); | 597 ash::Shell::GetInstance()->display_manager(); |
598 ash::DisplayLayout layout(ash::DisplayLayout::TOP, 10); | 598 ash::DisplayLayout layout(ash::DisplayLayout::TOP, 10); |
599 display_manager->SetLayoutForCurrentDisplays(layout); | 599 display_manager->SetLayoutForCurrentDisplays(layout); |
600 ash::SetDisplayUIScale(id1, 1.25f); | 600 ash::SetDisplayUIScale(id1, 1.25f); |
601 window_tree_host_manager->SetPrimaryDisplayId(id2); | 601 window_tree_host_manager->SetPrimaryDisplayId(id2); |
602 int64_t new_primary = ash::Shell::GetScreen()->GetPrimaryDisplay().id(); | 602 int64_t new_primary = gfx::Screen::GetScreen()->GetPrimaryDisplay().id(); |
603 window_tree_host_manager->SetOverscanInsets(new_primary, | 603 window_tree_host_manager->SetOverscanInsets(new_primary, |
604 gfx::Insets(10, 11, 12, 13)); | 604 gfx::Insets(10, 11, 12, 13)); |
605 display_manager->SetDisplayRotation(new_primary, gfx::Display::ROTATE_90, | 605 display_manager->SetDisplayRotation(new_primary, gfx::Display::ROTATE_90, |
606 gfx::Display::ROTATION_SOURCE_USER); | 606 gfx::Display::ROTATION_SOURCE_USER); |
607 | 607 |
608 // Does not store the preferences locally. | 608 // Does not store the preferences locally. |
609 EXPECT_FALSE(local_state()->FindPreference( | 609 EXPECT_FALSE(local_state()->FindPreference( |
610 prefs::kSecondaryDisplays)->HasUserSetting()); | 610 prefs::kSecondaryDisplays)->HasUserSetting()); |
611 EXPECT_FALSE(local_state()->FindPreference( | 611 EXPECT_FALSE(local_state()->FindPreference( |
612 prefs::kDisplayProperties)->HasUserSetting()); | 612 prefs::kDisplayProperties)->HasUserSetting()); |
(...skipping 361 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
974 // Sanity check. Restore to extended. | 974 // Sanity check. Restore to extended. |
975 StoreDisplayBoolPropertyForPair(pair, "default_unified", false); | 975 StoreDisplayBoolPropertyForPair(pair, "default_unified", false); |
976 StoreDisplayBoolPropertyForPair(pair, "mirrored", false); | 976 StoreDisplayBoolPropertyForPair(pair, "mirrored", false); |
977 LoadDisplayPreferences(false); | 977 LoadDisplayPreferences(false); |
978 UpdateDisplay("100x100,200x200"); | 978 UpdateDisplay("100x100,200x200"); |
979 EXPECT_FALSE(display_manager->IsInMirrorMode()); | 979 EXPECT_FALSE(display_manager->IsInMirrorMode()); |
980 EXPECT_FALSE(display_manager->IsInUnifiedMode()); | 980 EXPECT_FALSE(display_manager->IsInUnifiedMode()); |
981 } | 981 } |
982 | 982 |
983 } // namespace chromeos | 983 } // namespace chromeos |
OLD | NEW |