summaryrefslogtreecommitdiffstats
path: root/ash/display/display_manager_unittest.cc
diff options
context:
space:
mode:
authoroshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-23 00:56:41 +0000
committeroshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-23 00:56:41 +0000
commit1e96ceb7eccdeb2aebc5e64255f0c4c39b11f186 (patch)
tree5fc01e4188d320bd07707f2d0076951328a7ab43 /ash/display/display_manager_unittest.cc
parent5acfa6c83c46452b989cad128118936a585b8b7a (diff)
downloadchromium_src-1e96ceb7eccdeb2aebc5e64255f0c4c39b11f186.zip
chromium_src-1e96ceb7eccdeb2aebc5e64255f0c4c39b11f186.tar.gz
chromium_src-1e96ceb7eccdeb2aebc5e64255f0c4c39b11f186.tar.bz2
Enable virtual resolution on low DPI displays
BUG=233375,180535 TEST=covered by unit tests. Review URL: https://codereview.chromium.org/14320009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@195672 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/display/display_manager_unittest.cc')
-rw-r--r--ash/display/display_manager_unittest.cc48
1 files changed, 41 insertions, 7 deletions
diff --git a/ash/display/display_manager_unittest.cc b/ash/display/display_manager_unittest.cc
index 7ddb8a5..66ad123 100644
--- a/ash/display/display_manager_unittest.cc
+++ b/ash/display/display_manager_unittest.cc
@@ -714,25 +714,55 @@ TEST_F(DisplayManagerTest, Rotate) {
}
TEST_F(DisplayManagerTest, UIScale) {
- // 1x display does not support scaling.
- UpdateDisplay("100x200");
+ UpdateDisplay("1280x800");
int64 display_id = Shell::GetScreen()->GetPrimaryDisplay().id();
+ display_manager()->SetDisplayUIScale(display_id, 1.125f);
+ EXPECT_EQ(1.0, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 0.8f);
+ EXPECT_EQ(1.0f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 0.75f);
+ EXPECT_EQ(1.0f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 0.625f);
+ EXPECT_EQ(1.0f, GetDisplayInfoAt(0).ui_scale());
+
+ gfx::Display::SetInternalDisplayId(display_id);
display_manager()->SetDisplayUIScale(display_id, 1.5f);
EXPECT_EQ(1.0f, GetDisplayInfoAt(0).ui_scale());
display_manager()->SetDisplayUIScale(display_id, 1.25f);
EXPECT_EQ(1.0f, GetDisplayInfoAt(0).ui_scale());
display_manager()->SetDisplayUIScale(display_id, 1.125f);
- EXPECT_EQ(1.0, GetDisplayInfoAt(0).ui_scale());
+ EXPECT_EQ(1.125f, GetDisplayInfoAt(0).ui_scale());
display_manager()->SetDisplayUIScale(display_id, 0.8f);
- EXPECT_EQ(1.0f, GetDisplayInfoAt(0).ui_scale());
+ EXPECT_EQ(0.8f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 0.75f);
+ EXPECT_EQ(0.8f, GetDisplayInfoAt(0).ui_scale());
display_manager()->SetDisplayUIScale(display_id, 0.625f);
- EXPECT_EQ(1.0f, GetDisplayInfoAt(0).ui_scale());
+ EXPECT_EQ(0.625f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 0.6f);
+ EXPECT_EQ(0.625f, GetDisplayInfoAt(0).ui_scale());
display_manager()->SetDisplayUIScale(display_id, 0.5f);
+ EXPECT_EQ(0.5f, GetDisplayInfoAt(0).ui_scale());
+
+ UpdateDisplay("1366x768");
+ display_manager()->SetDisplayUIScale(display_id, 1.5f);
EXPECT_EQ(1.0f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 1.25f);
+ EXPECT_EQ(1.0f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 1.125f);
+ EXPECT_EQ(1.125f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 0.8f);
+ EXPECT_EQ(1.125f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 0.75f);
+ EXPECT_EQ(0.75f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 0.6f);
+ EXPECT_EQ(0.6f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 0.625f);
+ EXPECT_EQ(0.6f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 0.5f);
+ EXPECT_EQ(0.5f, GetDisplayInfoAt(0).ui_scale());
- // 2x display supports all scales.
- UpdateDisplay("100x200*2");
+ UpdateDisplay("1280x850*2");
EXPECT_EQ(1.0f, GetDisplayInfoAt(0).ui_scale());
display_manager()->SetDisplayUIScale(display_id, 1.5f);
EXPECT_EQ(1.5f, GetDisplayInfoAt(0).ui_scale());
@@ -742,8 +772,12 @@ TEST_F(DisplayManagerTest, UIScale) {
EXPECT_EQ(1.125f, GetDisplayInfoAt(0).ui_scale());
display_manager()->SetDisplayUIScale(display_id, 0.8f);
EXPECT_EQ(0.8f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 0.75f);
+ EXPECT_EQ(0.8f, GetDisplayInfoAt(0).ui_scale());
display_manager()->SetDisplayUIScale(display_id, 0.625f);
EXPECT_EQ(0.625f, GetDisplayInfoAt(0).ui_scale());
+ display_manager()->SetDisplayUIScale(display_id, 0.6f);
+ EXPECT_EQ(0.625f, GetDisplayInfoAt(0).ui_scale());
display_manager()->SetDisplayUIScale(display_id, 0.5f);
EXPECT_EQ(0.5f, GetDisplayInfoAt(0).ui_scale());
}