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

Unified Diff: ash/root_window_controller_unittest.cc

Issue 100903002: Ignore fullscreen windows which are behind other windows for fullscreen mode. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge with master. Created 7 years 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
« no previous file with comments | « ash/root_window_controller.cc ('k') | ash/shelf/shelf_layout_manager.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ash/root_window_controller_unittest.cc
diff --git a/ash/root_window_controller_unittest.cc b/ash/root_window_controller_unittest.cc
index d547a8a335099074ab4f11962e4f4da675a6a6d3..2ff7362629a1b4eb392ad8e688ed92897f77cb69 100644
--- a/ash/root_window_controller_unittest.cc
+++ b/ash/root_window_controller_unittest.cc
@@ -454,7 +454,7 @@ TEST_F(RootWindowControllerTest, ModalContainerBlockedSession) {
}
}
-TEST_F(RootWindowControllerTest, GetTopmostFullscreenWindow) {
+TEST_F(RootWindowControllerTest, GetWindowForFullscreenMode) {
UpdateDisplay("600x600");
internal::RootWindowController* controller =
Shell::GetInstance()->GetPrimaryRootWindowController();
@@ -467,39 +467,23 @@ TEST_F(RootWindowControllerTest, GetTopmostFullscreenWindow) {
Widget* w3 = Widget::CreateWindowWithParentAndBounds(NULL,
w2->GetNativeWindow(), gfx::Rect(0, 0, 100, 100));
- // Test that GetTopmostFullscreenWindow() finds the fullscreen window when one
+ // Test that GetWindowForFullscreenMode() finds the fullscreen window when one
// of its transient children is active.
w3->Activate();
- EXPECT_EQ(w2->GetNativeWindow(), controller->GetTopmostFullscreenWindow());
+ EXPECT_EQ(w2->GetNativeWindow(), controller->GetWindowForFullscreenMode());
- // Since there's only one desktop workspace, it always returns the same
- // fullscreen window.
+ // If the topmost window is not fullscreen, it returns NULL.
w1->Activate();
- EXPECT_EQ(w2->GetNativeWindow(), controller->GetTopmostFullscreenWindow());
-}
+ EXPECT_EQ(NULL, controller->GetWindowForFullscreenMode());
+ w1->Close();
+ w3->Close();
-TEST_F(RootWindowControllerTest, MultipleFullscreenWindows) {
- UpdateDisplay("600x600");
- internal::RootWindowController* controller =
- Shell::GetInstance()->GetPrimaryRootWindowController();
-
- 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(0, 0, 100, 100));
- w3->SetFullscreen(true);
-
- // Test that GetTopmostFullscreenWindow() finds the active fullscreen window.
+ // Only w2 remains, if minimized GetWindowForFullscreenMode should return
+ // NULL.
w2->Activate();
- EXPECT_EQ(w2->GetNativeWindow(), controller->GetTopmostFullscreenWindow());
- w3->Activate();
- EXPECT_EQ(w3->GetNativeWindow(), controller->GetTopmostFullscreenWindow());
-
- // If the active window is not fullscreen, it still returns the topmost
- // fullscreen window, which is the last active one.
- w1->Activate();
- EXPECT_EQ(w3->GetNativeWindow(), controller->GetTopmostFullscreenWindow());
+ EXPECT_EQ(w2->GetNativeWindow(), controller->GetWindowForFullscreenMode());
+ w2->Minimize();
+ EXPECT_EQ(NULL, controller->GetWindowForFullscreenMode());
}
// Test that user session window can't be focused if user session blocked by
« no previous file with comments | « ash/root_window_controller.cc ('k') | ash/shelf/shelf_layout_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698