Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(224)

Unified Diff: ash/wm/maximize_mode/maximize_mode_window_manager_unittest.cc

Issue 262433002: Exit overview before exiting maximize mode. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ash/wm/maximize_mode/maximize_mode_window_manager_unittest.cc
diff --git a/ash/wm/maximize_mode/maximize_mode_window_manager_unittest.cc b/ash/wm/maximize_mode/maximize_mode_window_manager_unittest.cc
index 0e67e482ed76dccbc066c2cd14892611d35cc9e2..56c6c53c950261a721585ce8cfcca8298fa0a3f0 100644
--- a/ash/wm/maximize_mode/maximize_mode_window_manager_unittest.cc
+++ b/ash/wm/maximize_mode/maximize_mode_window_manager_unittest.cc
@@ -12,6 +12,7 @@
#include "ash/test/ash_test_base.h"
#include "ash/test/shell_test_api.h"
#include "ash/wm/mru_window_tracker.h"
+#include "ash/wm/overview/window_selector_controller.h"
#include "ash/wm/window_state.h"
#include "ash/wm/wm_event.h"
#include "base/strings/utf_string_conversions.h"
@@ -828,6 +829,32 @@ TEST_F(MaximizeModeWindowManagerTest, TryToDesktopSizeDragUnmaximizable) {
EXPECT_EQ(first_dragged_origin.y() + 5, window->bounds().y());
}
+// Test that overview is exited before entering / exiting maximize mode so that
+// the window changes made by MaximizeModeWindowManager do not conflict with
+// those made in WindowOverview.
+TEST_F(MaximizeModeWindowManagerTest, ExitsOverview) {
+ // Bounds for windows we know can be controlled.
+ gfx::Rect rect1(10, 10, 200, 50);
+ gfx::Rect rect2(10, 60, 200, 50);
+ scoped_ptr<aura::Window> w1(CreateWindow(ui::wm::WINDOW_TYPE_NORMAL, rect1));
+ scoped_ptr<aura::Window> w2(CreateWindow(ui::wm::WINDOW_TYPE_NORMAL, rect2));
+
+ WindowSelectorController* window_selector_controller =
+ Shell::GetInstance()->window_selector_controller();
+ window_selector_controller->ToggleOverview();
+ ASSERT_TRUE(window_selector_controller->IsSelecting());
+ ash::MaximizeModeWindowManager* manager = CreateMaximizeModeWindowManager();
+ ASSERT_TRUE(manager);
+ EXPECT_FALSE(window_selector_controller->IsSelecting());
+
+ window_selector_controller->ToggleOverview();
+ ASSERT_TRUE(window_selector_controller->IsSelecting());
+ // Destroy the manager again and check that the windows return to their
+ // previous state.
+ DestroyMaximizeModeWindowManager();
+ EXPECT_FALSE(window_selector_controller->IsSelecting());
+}
+
#endif // OS_WIN
} // namespace ash

Powered by Google App Engine
This is Rietveld 408576698