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

Unified Diff: chrome/browser/ui/views/frame/browser_view_browsertest.cc

Issue 11411250: Immersive mode reveals the tabstrip/omnibox on top of web content (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: update comment Created 8 years, 1 month 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/views/frame/browser_view.cc ('k') | chrome/browser/ui/views/frame/browser_view_layout.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/ui/views/frame/browser_view_browsertest.cc
diff --git a/chrome/browser/ui/views/frame/browser_view_browsertest.cc b/chrome/browser/ui/views/frame/browser_view_browsertest.cc
index 41bcf00a0cd3f878976dc56c95a21e878bef502f..26b4a2e461118597009dc910a2cbaaacb121029a 100644
--- a/chrome/browser/ui/views/frame/browser_view_browsertest.cc
+++ b/chrome/browser/ui/views/frame/browser_view_browsertest.cc
@@ -9,11 +9,10 @@
#include "chrome/browser/ui/views/location_bar/location_bar_view.h"
#include "chrome/browser/ui/views/tabs/tab_strip.h"
#include "chrome/test/base/in_process_browser_test.h"
+#include "ui/compositor/layer_animator.h"
#include "ui/views/focus/focus_manager.h"
-#include "ui/views/view.h"
using views::FocusManager;
-using views::View;
typedef InProcessBrowserTest BrowserViewTest;
@@ -39,6 +38,8 @@ IN_PROC_BROWSER_TEST_F(BrowserViewTest, MAYBE_FullscreenClearsFocus) {
}
IN_PROC_BROWSER_TEST_F(BrowserViewTest, ImmersiveMode) {
+ ui::LayerAnimator::set_disable_animations_for_test(true);
+
BrowserView* browser_view = static_cast<BrowserView*>(browser()->window());
ImmersiveModeController* controller =
browser_view->immersive_mode_controller();
@@ -56,15 +57,47 @@ IN_PROC_BROWSER_TEST_F(BrowserViewTest, ImmersiveMode) {
controller->SetEnabled(true);
EXPECT_TRUE(controller->enabled());
EXPECT_TRUE(controller->ShouldHideTopViews());
+ EXPECT_FALSE(controller->IsRevealed());
EXPECT_TRUE(browser_view->tabstrip()->IsImmersiveStyle());
EXPECT_TRUE(browser_view->IsTabStripVisible());
EXPECT_FALSE(browser_view->IsToolbarVisible());
// Trigger a reveal keeps us in immersive mode, but top-of-window views
// become visible.
- controller->RevealTopViews();
+ controller->StartRevealForTest();
+ EXPECT_TRUE(controller->enabled());
+ EXPECT_FALSE(controller->ShouldHideTopViews());
+ EXPECT_TRUE(controller->IsRevealed());
+ EXPECT_FALSE(browser_view->tabstrip()->IsImmersiveStyle());
+ EXPECT_TRUE(browser_view->IsTabStripVisible());
+ EXPECT_TRUE(browser_view->IsToolbarVisible());
+
+ // Ending a reveal keeps us in immersive mode, but toolbar goes invisible.
+ controller->EndRevealForTest();
EXPECT_TRUE(controller->enabled());
+ EXPECT_TRUE(controller->ShouldHideTopViews());
+ EXPECT_FALSE(controller->IsRevealed());
+ EXPECT_TRUE(browser_view->tabstrip()->IsImmersiveStyle());
+ EXPECT_TRUE(browser_view->IsTabStripVisible());
+ EXPECT_FALSE(browser_view->IsToolbarVisible());
+
+ // Disabling immersive mode puts us back to the beginning.
+ controller->SetEnabled(false);
+ EXPECT_FALSE(controller->enabled());
+ EXPECT_FALSE(controller->ShouldHideTopViews());
+ EXPECT_FALSE(controller->IsRevealed());
+ EXPECT_FALSE(browser_view->tabstrip()->IsImmersiveStyle());
+ EXPECT_TRUE(browser_view->IsTabStripVisible());
+ EXPECT_TRUE(browser_view->IsToolbarVisible());
+
+ // Disabling immersive mode while we are revealed should take us back to
+ // the beginning.
+ controller->SetEnabled(true);
+ controller->StartRevealForTest();
+ controller->SetEnabled(false);
+ EXPECT_FALSE(controller->enabled());
EXPECT_FALSE(controller->ShouldHideTopViews());
+ EXPECT_FALSE(controller->IsRevealed());
EXPECT_FALSE(browser_view->tabstrip()->IsImmersiveStyle());
EXPECT_TRUE(browser_view->IsTabStripVisible());
EXPECT_TRUE(browser_view->IsToolbarVisible());
« no previous file with comments | « chrome/browser/ui/views/frame/browser_view.cc ('k') | chrome/browser/ui/views/frame/browser_view_layout.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698