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

Unified Diff: ash/root_window_controller_unittest.cc

Issue 149493008: Use active window if on current workspace for fullscreen mode. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Update fullscreen state tracking in workspace and only consider switchable containers for active no… Created 6 years, 10 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/root_window_controller_unittest.cc
diff --git a/ash/root_window_controller_unittest.cc b/ash/root_window_controller_unittest.cc
index f331afb6912f52524f599ab8aeee6b3383cab0b3..66eb917cc7fffdbe185fe11a79ab63a9bf611a35 100644
--- a/ash/root_window_controller_unittest.cc
+++ b/ash/root_window_controller_unittest.cc
@@ -458,6 +458,44 @@ TEST_F(RootWindowControllerTest, GetWindowForFullscreenMode) {
EXPECT_EQ(NULL, controller->GetWindowForFullscreenMode());
}
+TEST_F(RootWindowControllerTest, MultipleDisplaysGetWindowForFullscreenMode) {
+ if (!SupportsMultipleDisplays())
+ return;
+
+ UpdateDisplay("600x600,600x600");
+ Shell::RootWindowControllerList controllers =
+ Shell::GetInstance()->GetAllRootWindowControllers();
+
+ Widget* w1 = CreateTestWidget(gfx::Rect(0, 0, 100, 100));
+ w1->Maximize();
+ Widget* w2 = CreateTestWidget(gfx::Rect(0, 0, 100, 100));
+ w2->SetFullscreen(true);
+ Widget* w3 = CreateTestWidget(gfx::Rect(600, 0, 100, 100));
+
+ EXPECT_EQ(w1->GetNativeWindow()->GetRootWindow(),
+ controllers[0]->root_window());
+ EXPECT_EQ(w2->GetNativeWindow()->GetRootWindow(),
+ controllers[0]->root_window());
+ EXPECT_EQ(w3->GetNativeWindow()->GetRootWindow(),
+ controllers[1]->root_window());
+
+ w1->Activate();
+ EXPECT_EQ(NULL, controllers[0]->GetWindowForFullscreenMode());
+ EXPECT_EQ(NULL, controllers[1]->GetWindowForFullscreenMode());
+
+ w2->Activate();
+ EXPECT_EQ(w2->GetNativeWindow(),
+ controllers[0]->GetWindowForFullscreenMode());
+ EXPECT_EQ(NULL, controllers[1]->GetWindowForFullscreenMode());
+
+ // Verify that the first root window controller remains in fullscreen mode
+ // when a window on the other display is activated.
+ w3->Activate();
+ EXPECT_EQ(w2->GetNativeWindow(),
+ controllers[0]->GetWindowForFullscreenMode());
+ EXPECT_EQ(NULL, controllers[1]->GetWindowForFullscreenMode());
+}
+
// Test that user session window can't be focused if user session blocked by
// some overlapping UI.
TEST_F(RootWindowControllerTest, FocusBlockedWindow) {

Powered by Google App Engine
This is Rietveld 408576698