| Index: ash/display/display_controller_unittest.cc
|
| diff --git a/ash/display/display_controller_unittest.cc b/ash/display/display_controller_unittest.cc
|
| index 95b7af6a420bb498b002c3b60c3447254771e75d..831421c83a3e10e3b2ed8aa47517153781903051 100644
|
| --- a/ash/display/display_controller_unittest.cc
|
| +++ b/ash/display/display_controller_unittest.cc
|
| @@ -67,6 +67,8 @@ class TestObserver : public DisplayController::Observer,
|
| : changing_count_(0),
|
| changed_count_(0),
|
| bounds_changed_count_(0),
|
| + rotation_changed_count_(0),
|
| + workarea_changed_count_(0),
|
| changed_display_id_(0),
|
| focus_changed_count_(0),
|
| activation_changed_count_(0) {
|
| @@ -96,9 +98,15 @@ class TestObserver : public DisplayController::Observer,
|
| }
|
|
|
| // Overrideen from gfx::DisplayObserver
|
| - virtual void OnDisplayBoundsChanged(const gfx::Display& display) OVERRIDE {
|
| + virtual void OnDisplayMetricsChanged(const gfx::Display& display,
|
| + DisplayObserver::MetricsType metrics) OVERRIDE {
|
| changed_display_id_ = display.id();
|
| - bounds_changed_count_ ++;
|
| + if (metrics & DISPLAY_METRICS_BOUNDS)
|
| + ++bounds_changed_count_;
|
| + if (metrics & DISPLAY_METRICS_ROTATION)
|
| + ++rotation_changed_count_;
|
| + if (metrics & DISPLAY_METRICS_WORKAREA)
|
| + ++workarea_changed_count_;
|
| }
|
| virtual void OnDisplayAdded(const gfx::Display& new_display) OVERRIDE {
|
| }
|
| @@ -131,6 +139,14 @@ class TestObserver : public DisplayController::Observer,
|
| return Resetter<int>(&bounds_changed_count_).value();
|
| }
|
|
|
| + int64 GetRotationChangedCountAndReset() {
|
| + return Resetter<int>(&rotation_changed_count_).value();
|
| + }
|
| +
|
| + int64 GetWorkareaChangedCountAndReset() {
|
| + return Resetter<int>(&workarea_changed_count_).value();
|
| + }
|
| +
|
| int64 GetChangedDisplayIdAndReset() {
|
| return Resetter<int64>(&changed_display_id_).value();
|
| }
|
| @@ -148,6 +164,8 @@ class TestObserver : public DisplayController::Observer,
|
| int changed_count_;
|
|
|
| int bounds_changed_count_;
|
| + int rotation_changed_count_;
|
| + int workarea_changed_count_;
|
| int64 changed_display_id_;
|
|
|
| int focus_changed_count_;
|
| @@ -387,6 +405,7 @@ TEST_F(DisplayControllerTest, SecondaryDisplayLayout) {
|
| UpdateDisplay("500x500,400x400");
|
| EXPECT_EQ(1, observer.CountAndReset()); // resize and add
|
| EXPECT_EQ(1, observer.GetBoundsChangedCountAndReset());
|
| + EXPECT_EQ(1, observer.GetWorkareaChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| gfx::Insets insets(5, 5, 5, 5);
|
| @@ -405,6 +424,7 @@ TEST_F(DisplayControllerTest, SecondaryDisplayLayout) {
|
| SetSecondaryDisplayLayout(DisplayLayout::BOTTOM);
|
| EXPECT_EQ(1, observer.CountAndReset());
|
| EXPECT_EQ(1, observer.GetBoundsChangedCountAndReset());
|
| + EXPECT_EQ(1, observer.GetWorkareaChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| EXPECT_EQ(secondary_display_id, observer.GetChangedDisplayIdAndReset());
|
| @@ -416,6 +436,7 @@ TEST_F(DisplayControllerTest, SecondaryDisplayLayout) {
|
| SetSecondaryDisplayLayout(DisplayLayout::LEFT);
|
| EXPECT_EQ(1, observer.CountAndReset());
|
| EXPECT_EQ(1, observer.GetBoundsChangedCountAndReset());
|
| + EXPECT_EQ(1, observer.GetWorkareaChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| EXPECT_EQ(secondary_display_id, observer.GetChangedDisplayIdAndReset());
|
| @@ -427,6 +448,7 @@ TEST_F(DisplayControllerTest, SecondaryDisplayLayout) {
|
| SetSecondaryDisplayLayout(DisplayLayout::TOP);
|
| EXPECT_EQ(1, observer.CountAndReset());
|
| EXPECT_EQ(1, observer.GetBoundsChangedCountAndReset());
|
| + EXPECT_EQ(1, observer.GetWorkareaChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| EXPECT_EQ(secondary_display_id, observer.GetChangedDisplayIdAndReset());
|
| @@ -438,6 +460,7 @@ TEST_F(DisplayControllerTest, SecondaryDisplayLayout) {
|
| SetSecondaryDisplayLayoutAndOffset(DisplayLayout::RIGHT, 300);
|
| EXPECT_EQ(1, observer.CountAndReset()); // resize and add
|
| EXPECT_EQ(1, observer.GetBoundsChangedCountAndReset());
|
| + EXPECT_EQ(1, observer.GetWorkareaChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| EXPECT_EQ(secondary_display_id, observer.GetChangedDisplayIdAndReset());
|
| @@ -448,6 +471,7 @@ TEST_F(DisplayControllerTest, SecondaryDisplayLayout) {
|
| SetSecondaryDisplayLayoutAndOffset(DisplayLayout::RIGHT, 490);
|
| EXPECT_EQ(1, observer.CountAndReset()); // resize and add
|
| EXPECT_EQ(1, observer.GetBoundsChangedCountAndReset());
|
| + EXPECT_EQ(1, observer.GetWorkareaChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| EXPECT_EQ(secondary_display_id, observer.GetChangedDisplayIdAndReset());
|
| @@ -457,6 +481,7 @@ TEST_F(DisplayControllerTest, SecondaryDisplayLayout) {
|
| SetSecondaryDisplayLayoutAndOffset(DisplayLayout::RIGHT, -400);
|
| EXPECT_EQ(secondary_display_id, observer.GetChangedDisplayIdAndReset());
|
| EXPECT_EQ(1, observer.GetBoundsChangedCountAndReset());
|
| + EXPECT_EQ(1, observer.GetWorkareaChangedCountAndReset());
|
| EXPECT_EQ(1, observer.CountAndReset()); // resize and add
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| @@ -467,6 +492,7 @@ TEST_F(DisplayControllerTest, SecondaryDisplayLayout) {
|
| SetSecondaryDisplayLayoutAndOffset(DisplayLayout::BOTTOM, -200);
|
| EXPECT_EQ(secondary_display_id, observer.GetChangedDisplayIdAndReset());
|
| EXPECT_EQ(1, observer.GetBoundsChangedCountAndReset());
|
| + EXPECT_EQ(1, observer.GetWorkareaChangedCountAndReset());
|
| EXPECT_EQ(1, observer.CountAndReset()); // resize and add
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| @@ -477,6 +503,7 @@ TEST_F(DisplayControllerTest, SecondaryDisplayLayout) {
|
| SetSecondaryDisplayLayoutAndOffset(DisplayLayout::BOTTOM, 490);
|
| EXPECT_EQ(secondary_display_id, observer.GetChangedDisplayIdAndReset());
|
| EXPECT_EQ(1, observer.GetBoundsChangedCountAndReset());
|
| + EXPECT_EQ(1, observer.GetWorkareaChangedCountAndReset());
|
| EXPECT_EQ(1, observer.CountAndReset()); // resize and add
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| @@ -486,6 +513,7 @@ TEST_F(DisplayControllerTest, SecondaryDisplayLayout) {
|
| SetSecondaryDisplayLayoutAndOffset(DisplayLayout::BOTTOM, -400);
|
| EXPECT_EQ(secondary_display_id, observer.GetChangedDisplayIdAndReset());
|
| EXPECT_EQ(1, observer.GetBoundsChangedCountAndReset());
|
| + EXPECT_EQ(1, observer.GetWorkareaChangedCountAndReset());
|
| EXPECT_EQ(1, observer.CountAndReset()); // resize and add
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| @@ -496,6 +524,7 @@ TEST_F(DisplayControllerTest, SecondaryDisplayLayout) {
|
| SetSecondaryDisplayLayoutAndOffset(DisplayLayout::BOTTOM, -400);
|
| EXPECT_EQ(0, observer.GetChangedDisplayIdAndReset());
|
| EXPECT_EQ(0, observer.GetBoundsChangedCountAndReset());
|
| + EXPECT_EQ(0, observer.GetWorkareaChangedCountAndReset());
|
| EXPECT_EQ(0, observer.CountAndReset()); // resize and add
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| @@ -559,6 +588,7 @@ TEST_F(DisplayControllerTest, MirrorToDockedWithFullscreen) {
|
| EXPECT_EQ(1U, display_manager->num_connected_displays());
|
| EXPECT_EQ(0, observer.GetChangedDisplayIdAndReset());
|
| EXPECT_EQ(0, observer.GetBoundsChangedCountAndReset());
|
| + EXPECT_EQ(0, observer.GetWorkareaChangedCountAndReset());
|
| EXPECT_EQ(1, observer.CountAndReset());
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| @@ -627,12 +657,15 @@ TEST_F(DisplayControllerTest, BoundsUpdated) {
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
|
|
| // Rotation
|
| + observer.GetRotationChangedCountAndReset(); // we only want to reset.
|
| int64 primary_id = GetPrimaryDisplay().id();
|
| display_manager->SetDisplayRotation(primary_id, gfx::Display::ROTATE_90);
|
| + EXPECT_EQ(2, observer.GetRotationChangedCountAndReset());
|
| EXPECT_EQ(1, observer.CountAndReset());
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| display_manager->SetDisplayRotation(primary_id, gfx::Display::ROTATE_90);
|
| + EXPECT_EQ(0, observer.GetRotationChangedCountAndReset());
|
| EXPECT_EQ(0, observer.CountAndReset());
|
| EXPECT_EQ(0, observer.GetFocusChangedCountAndReset());
|
| EXPECT_EQ(0, observer.GetActivationChangedCountAndReset());
|
| @@ -1032,6 +1065,7 @@ TEST_F(DisplayControllerTest, Rotate) {
|
| aura::Window::Windows root_windows = Shell::GetAllRootWindows();
|
| aura::test::EventGenerator generator1(root_windows[0]);
|
|
|
| + TestObserver observer;
|
| EXPECT_EQ("120x200", root_windows[0]->bounds().size().ToString());
|
| EXPECT_EQ("150x200", root_windows[1]->bounds().size().ToString());
|
| EXPECT_EQ("120,0 150x200",
|
| @@ -1040,6 +1074,7 @@ TEST_F(DisplayControllerTest, Rotate) {
|
| EXPECT_EQ("50,40", event_handler.GetLocationAndReset());
|
| EXPECT_EQ(gfx::Display::ROTATE_0, GetStoredRotation(display1.id()));
|
| EXPECT_EQ(gfx::Display::ROTATE_0, GetStoredRotation(display2_id));
|
| + EXPECT_EQ(0, observer.GetRotationChangedCountAndReset());
|
|
|
| display_manager->SetDisplayRotation(display1.id(),
|
| gfx::Display::ROTATE_90);
|
| @@ -1051,6 +1086,7 @@ TEST_F(DisplayControllerTest, Rotate) {
|
| EXPECT_EQ("40,69", event_handler.GetLocationAndReset());
|
| EXPECT_EQ(gfx::Display::ROTATE_90, GetStoredRotation(display1.id()));
|
| EXPECT_EQ(gfx::Display::ROTATE_0, GetStoredRotation(display2_id));
|
| + EXPECT_EQ(2, observer.GetRotationChangedCountAndReset());
|
|
|
| DisplayLayout display_layout(DisplayLayout::BOTTOM, 50);
|
| display_manager->SetLayoutForCurrentDisplays(display_layout);
|
| @@ -1065,6 +1101,7 @@ TEST_F(DisplayControllerTest, Rotate) {
|
| ScreenUtil::GetSecondaryDisplay().bounds().ToString());
|
| EXPECT_EQ(gfx::Display::ROTATE_90, GetStoredRotation(display1.id()));
|
| EXPECT_EQ(gfx::Display::ROTATE_270, GetStoredRotation(display2_id));
|
| + EXPECT_EQ(1, observer.GetRotationChangedCountAndReset());
|
|
|
| #if !defined(OS_WIN)
|
| aura::test::EventGenerator generator2(root_windows[1]);
|
| @@ -1080,6 +1117,7 @@ TEST_F(DisplayControllerTest, Rotate) {
|
| ScreenUtil::GetSecondaryDisplay().bounds().ToString());
|
| EXPECT_EQ(gfx::Display::ROTATE_180, GetStoredRotation(display1.id()));
|
| EXPECT_EQ(gfx::Display::ROTATE_270, GetStoredRotation(display2_id));
|
| + EXPECT_EQ(2, observer.GetRotationChangedCountAndReset());
|
|
|
| generator1.MoveMouseToInHost(50, 40);
|
| EXPECT_EQ("69,159", event_handler.GetLocationAndReset());
|
|
|