|
@@ -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;
|
|
|
}
|
|
|
}
|