Index: chrome/browser/ui/views/frame/immersive_mode_controller_ash_unittest.cc |
diff --git a/chrome/browser/ui/views/frame/immersive_mode_controller_ash_unittest.cc b/chrome/browser/ui/views/frame/immersive_mode_controller_ash_unittest.cc |
index 5e986a69d0423db41704b6aed3dfd5c7aa2c062a..82631de52ddda74e25644482cf0847399e4bbd25 100644 |
--- a/chrome/browser/ui/views/frame/immersive_mode_controller_ash_unittest.cc |
+++ b/chrome/browser/ui/views/frame/immersive_mode_controller_ash_unittest.cc |
@@ -109,7 +109,8 @@ class ImmersiveModeControllerAshTest : public TestWithBrowserView { |
}; |
// Test the layout and visibility of the tabstrip, toolbar and TopContainerView |
-// in immersive fullscreen. |
+// in immersive fullscreen. For MD, tabstrip is considered as visible with top |
+// container offscreen. |
TEST_F(ImmersiveModeControllerAshTest, Layout) { |
AddTab(browser(), GURL("about:blank")); |
@@ -131,16 +132,13 @@ TEST_F(ImmersiveModeControllerAshTest, Layout) { |
EXPECT_TRUE(controller()->IsEnabled()); |
EXPECT_FALSE(controller()->IsRevealed()); |
EXPECT_FALSE(toolbar->visible()); |
- // For MD, the browser's top chrome is completely hidden in immersive |
- // fullscreen mode. |
+ // For MD, the browser's top chrome is completely offscreen with tapstrip |
+ // visible. |
bool is_using_material_design = |
ash::MaterialDesignController::IsImmersiveModeMaterial(); |
- if (is_using_material_design) { |
- EXPECT_FALSE(tabstrip->visible()); |
- } else { |
- EXPECT_TRUE(tabstrip->visible()); |
+ EXPECT_TRUE(tabstrip->visible()); |
+ if (!is_using_material_design) |
EXPECT_TRUE(tabstrip->IsImmersiveStyle()); |
- } |
// The tab indicators should be flush with the top of the widget. |
EXPECT_EQ(0, GetBoundsInWidget(tabstrip).y()); |
@@ -195,11 +193,13 @@ TEST_F(ImmersiveModeControllerAshTest, Layout) { |
// both immersive and tab fullscreen. |
EXPECT_EQ(0, GetBoundsInWidget(contents_web_view).y()); |
- // Hide the top-of-window views. Both the tab strip and the toolbar should |
- // hide when in both immersive and tab fullscreen. |
+ // Hide the top-of-window views. For MD, tabstrip is considered as visible. |
AttemptUnreveal(); |
EXPECT_FALSE(controller()->IsRevealed()); |
- EXPECT_FALSE(tabstrip->visible()); |
+ if (is_using_material_design) |
+ EXPECT_TRUE(tabstrip->visible()); |
+ else |
+ EXPECT_FALSE(tabstrip->visible()); |
EXPECT_FALSE(toolbar->visible()); |
// The web contents should still be flush with the edge of the widget. |
@@ -323,7 +323,8 @@ class ImmersiveModeControllerAshTestHostedApp |
}; |
// Test the layout and visibility of the TopContainerView and web contents when |
-// a hosted app is put into immersive fullscreen. |
+// a hosted app is put into immersive fullscreen. For MD, tabstrip is considered |
+// as visible with immersive fullsceen. |
TEST_F(ImmersiveModeControllerAshTestHostedApp, Layout) { |
// Add a tab because the browser starts out without any tabs at all. |
AddTab(browser(), GURL("about:blank")); |
@@ -352,9 +353,15 @@ TEST_F(ImmersiveModeControllerAshTestHostedApp, Layout) { |
// Entering immersive fullscreen should make the web contents flush with the |
// top of the widget. |
- EXPECT_FALSE(tabstrip->visible()); |
EXPECT_FALSE(toolbar->visible()); |
- EXPECT_TRUE(top_container->GetVisibleBounds().IsEmpty()); |
+ bool is_using_material_design = |
+ ash::MaterialDesignController::IsImmersiveModeMaterial(); |
+ if (is_using_material_design) { |
+ EXPECT_TRUE(tabstrip->visible()); |
+ } else { |
+ EXPECT_FALSE(tabstrip->visible()); |
+ EXPECT_TRUE(top_container->GetVisibleBounds().IsEmpty()); |
+ } |
EXPECT_EQ(0, GetBoundsInWidget(contents_web_view).y()); |
// Reveal the window header. |