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

Unified Diff: chrome/browser/ui/browser_browsertest.cc

Issue 7890056: FullscreenExitBubble temp UI for Mac. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: browser tests Created 9 years, 3 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: chrome/browser/ui/browser_browsertest.cc
diff --git a/chrome/browser/ui/browser_browsertest.cc b/chrome/browser/ui/browser_browsertest.cc
index 61b20204aa2f6f2d6270b54e510e3e12825afcd6..6de811e184afbd160d6e97861c323e85e68e9e27 100644
--- a/chrome/browser/ui/browser_browsertest.cc
+++ b/chrome/browser/ui/browser_browsertest.cc
@@ -6,6 +6,9 @@
#include "base/compiler_specific.h"
#include "base/file_path.h"
+#if defined(OS_MACOSX)
+#include "base/mac/mac_util.h"
+#endif
#include "base/sys_info.h"
#include "base/utf_string_conversions.h"
#include "chrome/app/chrome_command_ids.h"
@@ -824,6 +827,64 @@ IN_PROC_BROWSER_TEST_F(BrowserTest, TestTabExitsItselfFromFullscreen) {
ASSERT_FALSE(browser()->window()->IsFullscreen());
}
+#if defined(OS_MACOSX)
+IN_PROC_BROWSER_TEST_F(BrowserTest, TabEntersPresentationModeFromWindowed) {
+ ASSERT_TRUE(test_server()->Start());
+
+ AddTabAtIndex(0, GURL("about:blank"), PageTransition::TYPED);
+
+ TabContents* fullscreen_tab = browser()->GetSelectedTabContents();
+
+ EXPECT_FALSE(browser()->window()->IsFullscreen());
+ EXPECT_FALSE(browser()->window()->InPresentationMode());
+ browser()->ToggleFullscreenModeForTab(fullscreen_tab, true);
+ ui_test_utils::WaitForNotification(chrome::NOTIFICATION_FULLSCREEN_CHANGED);
+ ASSERT_TRUE(browser()->window()->IsFullscreen());
+ ASSERT_TRUE(browser()->window()->InPresentationMode());
+ browser()->TogglePresentationMode();
+ ui_test_utils::WaitForNotification(chrome::NOTIFICATION_FULLSCREEN_CHANGED);
+ ASSERT_FALSE(browser()->window()->IsFullscreen());
+ ASSERT_FALSE(browser()->window()->InPresentationMode());
+
+ if (base::mac::IsOSLionOrLater()) {
+ // Test that tab fullscreen mode doesn't make presentation mode the default
+ // on Lion.
+ browser()->ToggleFullscreenMode();
+ ui_test_utils::WaitForNotification(chrome::NOTIFICATION_FULLSCREEN_CHANGED);
+ ASSERT_TRUE(browser()->window()->IsFullscreen());
+ ASSERT_FALSE(browser()->window()->InPresentationMode());
+ }
+}
+
+IN_PROC_BROWSER_TEST_F(BrowserTest, ReturnToFullscreenInLion) {
+ if (base::mac::IsOSSnowLeopardOrEarlier()) {
+ // This test only makes sense on Lion, where it's possible to be in
+ // fullscreen mode but not in presentation mode.
+ return;
Nico 2011/09/16 18:18:46 This is mostly useless, since we don't have bots t
+ }
+ ASSERT_TRUE(test_server()->Start());
+
+ AddTabAtIndex(0, GURL("about:blank"), PageTransition::TYPED);
+
+ TabContents* fullscreen_tab = browser()->GetSelectedTabContents();
+
+ browser()->ToggleFullscreenMode();
+ ui_test_utils::WaitForNotification(chrome::NOTIFICATION_FULLSCREEN_CHANGED);
+ ASSERT_TRUE(browser()->window()->IsFullscreen());
+ ASSERT_FALSE(browser()->window()->InPresentationMode());
+
+ browser()->ToggleFullscreenModeForTab(fullscreen_tab, true);
+ ui_test_utils::WaitForNotification(chrome::NOTIFICATION_FULLSCREEN_CHANGED);
+ ASSERT_TRUE(browser()->window()->IsFullscreen());
+ ASSERT_TRUE(browser()->window()->InPresentationMode());
+
+ browser()->TogglePresentationMode();
+ ui_test_utils::WaitForNotification(chrome::NOTIFICATION_FULLSCREEN_CHANGED);
+ ASSERT_TRUE(browser()->window()->IsFullscreen());
+ ASSERT_FALSE(browser()->window()->InPresentationMode());
+}
+#endif
+
// Chromeos defaults to restoring the last session, so this test isn't
// applicable.
#if !defined(OS_CHROMEOS)

Powered by Google App Engine
This is Rietveld 408576698