Index: ash/root_window_controller_unittest.cc |
diff --git a/ash/root_window_controller_unittest.cc b/ash/root_window_controller_unittest.cc |
index be982d4c3cf1db1df7d9d98336411c391fb7cf53..069b259cc63ccfe800e24b18f4c8b60556db4800 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) { |