diff --git a/shell/browser/ui/views/opaque_frame_view.cc b/shell/browser/ui/views/opaque_frame_view.cc index c4f89568739..b556e029127 100644 --- a/shell/browser/ui/views/opaque_frame_view.cc +++ b/shell/browser/ui/views/opaque_frame_view.cc @@ -256,14 +256,17 @@ void OpaqueFrameView::LayoutWindowControls() { buttons_not_shown.push_back(views::FrameButton::kMinimize); buttons_not_shown.push_back(views::FrameButton::kClose); - for (const auto& button : leading_buttons_) { - ConfigureButton(button, ALIGN_LEADING); - std::erase(buttons_not_shown, button); - } + // We do not want to show the buttons in fullscreen mode. + if (!frame()->IsFullscreen()) { + for (const auto& button : leading_buttons_) { + ConfigureButton(button, ALIGN_LEADING); + std::erase(buttons_not_shown, button); + } - for (const auto& button : base::Reversed(trailing_buttons_)) { - ConfigureButton(button, ALIGN_TRAILING); - std::erase(buttons_not_shown, button); + for (const auto& button : base::Reversed(trailing_buttons_)) { + ConfigureButton(button, ALIGN_TRAILING); + std::erase(buttons_not_shown, button); + } } for (const auto& button_id : buttons_not_shown) @@ -402,8 +405,7 @@ void OpaqueFrameView::ConfigureButton(views::FrameButton button_id, ButtonAlignment alignment) { switch (button_id) { case views::FrameButton::kMinimize: { - bool can_minimize = true; // delegate_->CanMinimize(); - if (can_minimize) { + if (window()->IsMinimizable()) { minimize_button_->SetVisible(true); SetBoundsForButton(button_id, minimize_button_, alignment); } else { @@ -412,8 +414,7 @@ void OpaqueFrameView::ConfigureButton(views::FrameButton button_id, break; } case views::FrameButton::kMaximize: { - bool can_maximize = true; // delegate_->CanMaximize(); - if (can_maximize) { + if (window()->IsMaximizable()) { // When the window is restored, we show a maximized button; otherwise, // we show a restore button. bool is_restored = !window()->IsMaximized() && !window()->IsMinimized(); @@ -431,8 +432,12 @@ void OpaqueFrameView::ConfigureButton(views::FrameButton button_id, break; } case views::FrameButton::kClose: { - close_button_->SetVisible(true); - SetBoundsForButton(button_id, close_button_, alignment); + if (window()->IsClosable()) { + close_button_->SetVisible(true); + SetBoundsForButton(button_id, close_button_, alignment); + } else { + HideButton(button_id); + } break; } }