| Index: chrome/browser/ui/views/frame/browser_non_client_frame_view_mus.cc
|
| diff --git a/chrome/browser/ui/views/frame/browser_non_client_frame_view_mus.cc b/chrome/browser/ui/views/frame/browser_non_client_frame_view_mus.cc
|
| index 3fa2a16a7e8d32770cc9046255e4b04bdd1c3cf6..95390efd24734dde7230dbc45dcb0165335d3330 100644
|
| --- a/chrome/browser/ui/views/frame/browser_non_client_frame_view_mus.cc
|
| +++ b/chrome/browser/ui/views/frame/browser_non_client_frame_view_mus.cc
|
| @@ -135,11 +135,6 @@ gfx::Rect BrowserNonClientFrameViewMus::GetBoundsForTabStrip(
|
| if (!tabstrip)
|
| return gfx::Rect();
|
|
|
| - // When the tab strip is painted in the immersive fullscreen light bar style,
|
| - // the caption buttons and the avatar button are not visible. However, their
|
| - // bounds are still used to compute the tab strip bounds so that the tabs have
|
| - // the same horizontal position when the tab strip is painted in the immersive
|
| - // light bar style as when the top-of-window views are revealed.
|
| int left_inset = GetTabStripLeftInset();
|
| int right_inset = GetTabStripRightInset();
|
| return gfx::Rect(left_inset, GetTopInset(false),
|
| @@ -148,8 +143,17 @@ gfx::Rect BrowserNonClientFrameViewMus::GetBoundsForTabStrip(
|
| }
|
|
|
| int BrowserNonClientFrameViewMus::GetTopInset(bool restored) const {
|
| - if (!ShouldPaint() || UseImmersiveLightbarHeaderStyle())
|
| + if (!ShouldPaint()) {
|
| + // When immersive fullscreen unrevealed, tabstrip is offscreen with normal
|
| + // tapstrip bounds, the top inset should reach this topmost edge.
|
| + const ImmersiveModeController* const immersive_controller =
|
| + browser_view()->immersive_mode_controller();
|
| + if (immersive_controller->IsEnabled() &&
|
| + !immersive_controller->IsRevealed()) {
|
| + return (-1) * browser_view()->GetTabStripHeight();
|
| + }
|
| return 0;
|
| + }
|
|
|
| if (browser_view()->IsTabStripVisible()) {
|
| return ((frame()->IsMaximized() || frame()->IsFullscreen()) && !restored)
|
| @@ -296,13 +300,6 @@ void BrowserNonClientFrameViewMus::OnPaint(gfx::Canvas* canvas) {
|
| if (!ShouldPaint())
|
| return;
|
|
|
| - // TODO(sky): get immersive mode working.
|
| -
|
| - if (UseImmersiveLightbarHeaderStyle()) {
|
| - PaintImmersiveLightbarStyleHeader(canvas);
|
| - return;
|
| - }
|
| -
|
| if (browser_view()->IsToolbarVisible())
|
| PaintToolbarBackground(canvas);
|
| else if (!UsePackagedAppHeaderStyle())
|
| @@ -416,14 +413,6 @@ int BrowserNonClientFrameViewMus::GetTabStripRightInset() const {
|
| return right_inset;
|
| }
|
|
|
| -bool BrowserNonClientFrameViewMus::UseImmersiveLightbarHeaderStyle() const {
|
| - ImmersiveModeController* immersive_controller =
|
| - browser_view()->immersive_mode_controller();
|
| - return immersive_controller->IsEnabled() &&
|
| - !immersive_controller->IsRevealed() &&
|
| - browser_view()->IsTabStripVisible();
|
| -}
|
| -
|
| bool BrowserNonClientFrameViewMus::UsePackagedAppHeaderStyle() const {
|
| // Use for non tabbed trusted source windows, e.g. Settings, as well as apps.
|
| const Browser* const browser = browser_view()->browser();
|
| @@ -441,17 +430,12 @@ void BrowserNonClientFrameViewMus::LayoutIncognitoButton() {
|
| int avatar_bottom = GetTopInset(false) + browser_view()->GetTabStripHeight() -
|
| kAvatarIconPadding;
|
| int avatar_y = avatar_bottom - incognito_icon.height();
|
| -
|
| - // Hide the incognito icon in immersive fullscreen when the tab light bar is
|
| - // visible because the header is too short for the icognito icon to be
|
| - // recognizable.
|
| - bool avatar_visible = !UseImmersiveLightbarHeaderStyle();
|
| - int avatar_height = avatar_visible ? incognito_icon.height() : 0;
|
| + int avatar_height = incognito_icon.height();
|
|
|
| gfx::Rect avatar_bounds(kAvatarIconPadding, avatar_y, incognito_icon.width(),
|
| avatar_height);
|
| profile_indicator_icon()->SetBoundsRect(avatar_bounds);
|
| - profile_indicator_icon()->SetVisible(avatar_visible);
|
| + profile_indicator_icon()->SetVisible(true);
|
| }
|
|
|
| void BrowserNonClientFrameViewMus::LayoutProfileSwitcher() {
|
| @@ -467,19 +451,14 @@ bool BrowserNonClientFrameViewMus::ShouldPaint() const {
|
| if (!frame()->IsFullscreen())
|
| return true;
|
|
|
| - // We need to paint when in immersive fullscreen and either:
|
| - // - The top-of-window views are revealed.
|
| - // - The lightbar style tabstrip is visible.
|
| + // We need to paint when the top-of-window views are revealed in immersive
|
| + // fullscreen.
|
| ImmersiveModeController* immersive_mode_controller =
|
| browser_view()->immersive_mode_controller();
|
| return immersive_mode_controller->IsEnabled() &&
|
| - (immersive_mode_controller->IsRevealed() ||
|
| - UseImmersiveLightbarHeaderStyle());
|
| + immersive_mode_controller->IsRevealed();
|
| }
|
|
|
| -void BrowserNonClientFrameViewMus::PaintImmersiveLightbarStyleHeader(
|
| - gfx::Canvas* canvas) {}
|
| -
|
| void BrowserNonClientFrameViewMus::PaintToolbarBackground(gfx::Canvas* canvas) {
|
| gfx::Rect toolbar_bounds(browser_view()->GetToolbarBounds());
|
| if (toolbar_bounds.IsEmpty())
|
|
|