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

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

Issue 7966031: Exit tabbed fullscreen mode on navigation. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 9 years, 2 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
« no previous file with comments | « chrome/browser/ui/browser.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/ui/browser_browsertest.cc
diff --git a/chrome/browser/ui/browser_browsertest.cc b/chrome/browser/ui/browser_browsertest.cc
index 7cf1054f7dca85f550f497fb90e66966c97dd8c9..d4f3dc48789873842aaab34892ecb9c5a871828b 100644
--- a/chrome/browser/ui/browser_browsertest.cc
+++ b/chrome/browser/ui/browser_browsertest.cc
@@ -67,6 +67,8 @@ const FilePath::CharType* kBeforeUnloadFile =
const FilePath::CharType* kTitle1File = FILE_PATH_LITERAL("title1.html");
const FilePath::CharType* kTitle2File = FILE_PATH_LITERAL("title2.html");
+const FilePath::CharType* kSubFrameNavigationFile =
+ FILE_PATH_LITERAL("subframe-navigation.html");
const FilePath::CharType kDocRoot[] = FILE_PATH_LITERAL("chrome/test/data");
@@ -853,6 +855,53 @@ IN_PROC_BROWSER_TEST_F(BrowserTest, TestTabExitsItselfFromFullscreen) {
}
}
+IN_PROC_BROWSER_TEST_F(BrowserTest, TestTabExitsFullscreenOnNavigation) {
+ ASSERT_TRUE(test_server()->Start());
+
+ ui_test_utils::NavigateToURL(browser(), GURL("about:blank"));
+ ui_test_utils::NavigateToURL(browser(), GURL("chrome://newtab"));
+
+ TabContents* fullscreen_tab = browser()->GetSelectedTabContents();
+
+ ui_test_utils::WindowedNotificationObserver tree_updated_observer1(
+ chrome::NOTIFICATION_FULLSCREEN_CHANGED,
+ NotificationService::AllSources());
+ browser()->ToggleFullscreenModeForTab(fullscreen_tab, true);
+ tree_updated_observer1.Wait();
+
+ ASSERT_TRUE(browser()->window()->IsFullscreen());
+
+ ui_test_utils::WindowedNotificationObserver tree_updated_observer2(
+ chrome::NOTIFICATION_FULLSCREEN_CHANGED,
+ NotificationService::AllSources());
+ browser()->GoBack(CURRENT_TAB);
+ tree_updated_observer2.Wait();
+
+ ASSERT_FALSE(browser()->window()->IsFullscreen());
+}
+
+IN_PROC_BROWSER_TEST_F(BrowserTest,
+ TestTabDoesntExitFullscreenOnSubFrameNavigation) {
+ ASSERT_TRUE(test_server()->Start());
+
+ GURL url(ui_test_utils::GetTestUrl(FilePath(FilePath::kCurrentDirectory),
+ FilePath(kSubFrameNavigationFile)));
+ ui_test_utils::NavigateToURL(browser(), url);
+
+ TabContents* fullscreen_tab = browser()->GetSelectedTabContents();
+
+ ui_test_utils::WindowedNotificationObserver tree_updated_observer1(
+ chrome::NOTIFICATION_FULLSCREEN_CHANGED,
+ NotificationService::AllSources());
+ browser()->ToggleFullscreenModeForTab(fullscreen_tab, true);
+ tree_updated_observer1.Wait();
+ ASSERT_TRUE(browser()->window()->IsFullscreen());
+
+ fullscreen_tab->render_view_host()->
+ ExecuteJavascriptInWebFrame(string16(), ASCIIToUTF16("navigate();"));
+ ASSERT_TRUE(browser()->window()->IsFullscreen());
+}
+
#if defined(OS_MACOSX)
IN_PROC_BROWSER_TEST_F(BrowserTest, TabEntersPresentationModeFromWindowed) {
ASSERT_TRUE(test_server()->Start());
« no previous file with comments | « chrome/browser/ui/browser.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698