summaryrefslogtreecommitdiffstats
path: root/ash/dip_unittest.cc
diff options
context:
space:
mode:
authoroshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-28 11:52:10 +0000
committeroshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-28 11:52:10 +0000
commit47ebe0c6296197904f7faf4be3f4f8670d147c12 (patch)
treebe97294c4f938c1e5aad79e68a89debd8e2f4f0d /ash/dip_unittest.cc
parent15a8139dec983576d677bc6b6abded5c2b451c09 (diff)
downloadchromium_src-47ebe0c6296197904f7faf4be3f4f8670d147c12.zip
chromium_src-47ebe0c6296197904f7faf4be3f4f8670d147c12.tar.gz
chromium_src-47ebe0c6296197904f7faf4be3f4f8670d147c12.tar.bz2
Refactor DisplayInfo/Display - 2nd try
This is a first step to fix overscan issue and implement screen rotation. * remove bounds_in_pixel from gfx::Display * promote DisplayInfo to separate class/file * All display information is now generated in display_change_observer_x11.cc. almost no X11 depenency in display_manager.cc (I'll move FindInternalDisplayID out from display_manager.cc once https://codereview.chromium.org/12217120/ is landed) This makes testing more consistent with real environment. * Add DisplayManager::ClearCustomOverscanInsets so that you can reset the insets to default value. * Removed obsolete AshTestBase::ChangeDisplayConfig BUG=174721,119268 TEST=covered by test Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=185178 Review URL: https://chromiumcodereview.appspot.com/12218045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@185230 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/dip_unittest.cc')
-rw-r--r--ash/dip_unittest.cc14
1 files changed, 9 insertions, 5 deletions
diff --git a/ash/dip_unittest.cc b/ash/dip_unittest.cc
index 1df1ec7..2c00d71a 100644
--- a/ash/dip_unittest.cc
+++ b/ash/dip_unittest.cc
@@ -5,6 +5,7 @@
#include <algorithm>
#include <vector>
+#include "ash/display/display_manager.h"
#include "ash/launcher/launcher.h"
#include "ash/shell.h"
#include "ash/test/ash_test_base.h"
@@ -29,7 +30,7 @@ typedef ash::test::AshTestBase DIPTest;
// Test if the WM sets correct work area under different density.
TEST_F(DIPTest, WorkArea) {
- ChangeDisplayConfig(1.0f, gfx::Rect(0, 0, 1000, 900));
+ UpdateDisplay("1000x900*1.0f");
aura::RootWindow* root = Shell::GetPrimaryRootWindow();
const gfx::Display display =
@@ -40,13 +41,16 @@ TEST_F(DIPTest, WorkArea) {
EXPECT_EQ("0,0 1000x852", work_area.ToString());
EXPECT_EQ("0,0,48,0", display.bounds().InsetsFrom(work_area).ToString());
- ChangeDisplayConfig(2.0f, gfx::Rect(0, 0, 2000, 1800));
+ UpdateDisplay("2000x1800*2.0f");
+ gfx::Screen* screen = Shell::GetScreen();
- const gfx::Display display_2x =
- Shell::GetScreen()->GetDisplayNearestWindow(root);
+ const gfx::Display display_2x = screen->GetDisplayNearestWindow(root);
+ const internal::DisplayInfo display_info_2x =
+ Shell::GetInstance()->display_manager()->GetDisplayInfo(display_2x);
// The |bounds_in_pixel()| should report bounds in pixel coordinate.
- EXPECT_EQ("0,0 2000x1800", display_2x.bounds_in_pixel().ToString());
+ EXPECT_EQ("1,1 2000x1800",
+ display_info_2x.bounds_in_pixel().ToString());
// Aura and views coordinates are in DIP, so they their bounds do not change.
EXPECT_EQ("0,0 1000x900", display_2x.bounds().ToString());