diff --git a/shell/browser/ui/views/win_caption_button_container.cc b/shell/browser/ui/views/win_caption_button_container.cc index 7d55af42f9d4..a92d6349c504 100644 --- a/shell/browser/ui/views/win_caption_button_container.cc +++ b/shell/browser/ui/views/win_caption_button_container.cc @@ -15,6 +15,7 @@ #include "ui/base/l10n/l10n_util.h" #include "ui/compositor/layer.h" #include "ui/strings/grit/ui_strings.h" +#include "ui/views/accessibility/view_accessibility.h" #include "ui/views/background.h" #include "ui/views/layout/flex_layout.h" #include "ui/views/view_class_properties.h" @@ -79,6 +80,7 @@ WinCaptionButtonContainer::WinCaptionButtonContainer(WinFrameView* frame_view) views::MaximumFlexSizeRule::kPreferred, /* adjust_width_for_height */ false, views::MinimumFlexSizeRule::kScaleToZero)); + UpdateButtonToolTipsForWindowControlsOverlay(); } WinCaptionButtonContainer::~WinCaptionButtonContainer() {} @@ -101,18 +103,6 @@ int WinCaptionButtonContainer::NonClientHitTest(const gfx::Point& point) const { return HTCAPTION; } -gfx::Size WinCaptionButtonContainer::GetButtonSize() const { - // Close button size is set the same as all the buttons - return close_button_->GetSize(); -} - -void WinCaptionButtonContainer::SetButtonSize(gfx::Size size) { - minimize_button_->SetSize(size); - maximize_button_->SetSize(size); - restore_button_->SetSize(size); - close_button_->SetSize(size); -} - void WinCaptionButtonContainer::ResetWindowControls() { minimize_button_->SetState(views::Button::STATE_NORMAL); maximize_button_->SetState(views::Button::STATE_NORMAL); @@ -128,10 +118,7 @@ void WinCaptionButtonContainer::AddedToWidget() { widget_observation_.Observe(widget); UpdateButtons(); - - if (frame_view_->window()->IsWindowControlsOverlayEnabled()) { - UpdateBackground(); - } + UpdateBackground(); } void WinCaptionButtonContainer::RemovedFromWidget() { @@ -179,6 +166,24 @@ void WinCaptionButtonContainer::UpdateButtons() { InvalidateLayout(); } +void WinCaptionButtonContainer::UpdateButtonToolTipsForWindowControlsOverlay() { + minimize_button_->SetTooltipText( + minimize_button_->GetViewAccessibility().GetCachedName()); + maximize_button_->SetTooltipText( + maximize_button_->GetViewAccessibility().GetCachedName()); + restore_button_->SetTooltipText( + restore_button_->GetViewAccessibility().GetCachedName()); + close_button_->SetTooltipText( + close_button_->GetViewAccessibility().GetCachedName()); +} + +void WinCaptionButtonContainer::SetButtonSize(gfx::Size size) { + minimize_button_->SetSize(size); + maximize_button_->SetSize(size); + restore_button_->SetSize(size); + close_button_->SetSize(size); +} + BEGIN_METADATA(WinCaptionButtonContainer) END_METADATA diff --git a/shell/browser/ui/views/win_caption_button_container.h b/shell/browser/ui/views/win_caption_button_container.h index 308f35ca5375..7c2390b7da20 100644 --- a/shell/browser/ui/views/win_caption_button_container.h +++ b/shell/browser/ui/views/win_caption_button_container.h @@ -42,9 +42,11 @@ class WinCaptionButtonContainer : public views::View, // See also ClientView::NonClientHitTest. int NonClientHitTest(const gfx::Point& point) const; - gfx::Size GetButtonSize() const; void SetButtonSize(gfx::Size size); + // Add tooltip text to caption buttons. + void UpdateButtonToolTipsForWindowControlsOverlay(); + // Sets caption button container background color. void UpdateBackground();