Commit 7232a406 authored by Alan Cutter's avatar Alan Cutter Committed by Commit Bot

Make hosted app menu button highlight a circle

This CL updates hosted app menu buttons to be a circle instead of a
squircle. This matches the main browser app menu button highlight shape.

Before: https://bugs.chromium.org/p/chromium/issues/attachment?aid=382151&signed_aid=8nMn1jvoQMiuwbo9hYOZnw==&inline=1
After: https://bugs.chromium.org/p/chromium/issues/attachment?aid=382152&signed_aid=dqni06i4dkv3UxZYxCF6FA==&inline=1

Bug: 918093
Change-Id: I9137331b23047570a1a7becd97ee6be6a04d0abe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1496399
Commit-Queue: Alan Cutter <alancutter@chromium.org>
Reviewed-by: default avatarPeter Boström <pbos@chromium.org>
Reviewed-by: default avatarJay Harris <harrisjay@chromium.org>
Auto-Submit: Alan Cutter <alancutter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#637980}
parent f6c3980c
...@@ -11,14 +11,24 @@ ...@@ -11,14 +11,24 @@
#include "chrome/browser/ui/views/frame/app_menu_button_observer.h" #include "chrome/browser/ui/views/frame/app_menu_button_observer.h"
#include "chrome/browser/ui/views/toolbar/app_menu.h" #include "chrome/browser/ui/views/toolbar/app_menu.h"
#include "chrome/browser/ui/views/toolbar/toolbar_ink_drop_util.h" #include "chrome/browser/ui/views/toolbar/toolbar_ink_drop_util.h"
#include "ui/views/view_class_properties.h"
AppMenuButton::AppMenuButton(views::MenuButtonListener* menu_button_listener) AppMenuButton::AppMenuButton(views::MenuButtonListener* menu_button_listener)
: views::MenuButton(base::string16(), : views::MenuButton(base::string16(),
menu_button_listener, menu_button_listener,
CONTEXT_TOOLBAR_BUTTON) {} CONTEXT_TOOLBAR_BUTTON) {
SetProperty(views::kInternalPaddingKey, new gfx::Insets());
}
AppMenuButton::~AppMenuButton() {} AppMenuButton::~AppMenuButton() {}
void AppMenuButton::OnBoundsChanged(const gfx::Rect& previous_bounds) {
// TODO(pbos): Consolidate with ToolbarButton::OnBoundsChanged.
SetToolbarButtonHighlightPath(this, *GetProperty(views::kInternalPaddingKey));
views::MenuButton::OnBoundsChanged(previous_bounds);
}
SkColor AppMenuButton::GetInkDropBaseColor() const { SkColor AppMenuButton::GetInkDropBaseColor() const {
return GetToolbarInkDropBaseColor(this); return GetToolbarInkDropBaseColor(this);
} }
......
...@@ -30,6 +30,7 @@ class AppMenuButton : public views::MenuButton { ...@@ -30,6 +30,7 @@ class AppMenuButton : public views::MenuButton {
~AppMenuButton() override; ~AppMenuButton() override;
// views::MenuButton: // views::MenuButton:
void OnBoundsChanged(const gfx::Rect& previous_bounds) override;
SkColor GetInkDropBaseColor() const override; SkColor GetInkDropBaseColor() const override;
void AddObserver(AppMenuButtonObserver* observer); void AddObserver(AppMenuButtonObserver* observer);
......
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
#include "chrome/browser/ui/views/frame/browser_view.h" #include "chrome/browser/ui/views/frame/browser_view.h"
#include "chrome/browser/ui/views/frame/hosted_app_button_container.h" #include "chrome/browser/ui/views/frame/hosted_app_button_container.h"
#include "chrome/browser/ui/views/toolbar/app_menu.h" #include "chrome/browser/ui/views/toolbar/app_menu.h"
#include "chrome/browser/ui/views/toolbar/toolbar_ink_drop_util.h"
#include "chrome/grit/generated_resources.h" #include "chrome/grit/generated_resources.h"
#include "ui/base/hit_test.h" #include "ui/base/hit_test.h"
#include "ui/base/l10n/l10n_util.h" #include "ui/base/l10n/l10n_util.h"
...@@ -22,6 +23,7 @@ ...@@ -22,6 +23,7 @@
#include "ui/views/animation/ink_drop.h" #include "ui/views/animation/ink_drop.h"
#include "ui/views/border.h" #include "ui/views/border.h"
#include "ui/views/controls/button/menu_button.h" #include "ui/views/controls/button/menu_button.h"
#include "ui/views/view_class_properties.h"
#include "ui/views/window/hit_test_utils.h" #include "ui/views/window/hit_test_utils.h"
HostedAppMenuButton::HostedAppMenuButton(BrowserView* browser_view) HostedAppMenuButton::HostedAppMenuButton(BrowserView* browser_view)
...@@ -44,6 +46,9 @@ HostedAppMenuButton::HostedAppMenuButton(BrowserView* browser_view) ...@@ -44,6 +46,9 @@ HostedAppMenuButton::HostedAppMenuButton(BrowserView* browser_view)
int size = GetLayoutConstant(HOSTED_APP_MENU_BUTTON_SIZE); int size = GetLayoutConstant(HOSTED_APP_MENU_BUTTON_SIZE);
SetMinSize(gfx::Size(size, size)); SetMinSize(gfx::Size(size, size));
SetHorizontalAlignment(gfx::ALIGN_CENTER); SetHorizontalAlignment(gfx::ALIGN_CENTER);
constexpr gfx::Insets kInkDropInsets(2);
*GetProperty(views::kInternalPaddingKey) = kInkDropInsets;
} }
HostedAppMenuButton::~HostedAppMenuButton() {} HostedAppMenuButton::~HostedAppMenuButton() {}
......
...@@ -148,10 +148,6 @@ BrowserAppMenuButton::BrowserAppMenuButton(ToolbarView* toolbar_view) ...@@ -148,10 +148,6 @@ BrowserAppMenuButton::BrowserAppMenuButton(ToolbarView* toolbar_view)
md_observer_.Add(ui::MaterialDesignController::GetInstance()); md_observer_.Add(ui::MaterialDesignController::GetInstance());
// Because we're using the internal padding to keep track of the changes we
// make to the leading margin to handle Fitts' Law, it's easier to just
// allocate the property once and modify the value.
SetProperty(views::kInternalPaddingKey, new gfx::Insets());
UpdateBorder(); UpdateBorder();
} }
...@@ -321,13 +317,6 @@ void BrowserAppMenuButton::UpdateBorder() { ...@@ -321,13 +317,6 @@ void BrowserAppMenuButton::UpdateBorder() {
SetBorder(views::CreateEmptyBorder(new_insets)); SetBorder(views::CreateEmptyBorder(new_insets));
} }
void BrowserAppMenuButton::OnBoundsChanged(const gfx::Rect& previous_bounds) {
// TODO(pbos): Consolidate with ToolbarButton::OnBoundsChanged.
SetToolbarButtonHighlightPath(this, *GetProperty(views::kInternalPaddingKey));
AppMenuButton::OnBoundsChanged(previous_bounds);
}
gfx::Rect BrowserAppMenuButton::GetAnchorBoundsInScreen() const { gfx::Rect BrowserAppMenuButton::GetAnchorBoundsInScreen() const {
gfx::Rect bounds = GetBoundsInScreen(); gfx::Rect bounds = GetBoundsInScreen();
gfx::Insets insets = gfx::Insets insets =
......
...@@ -49,7 +49,6 @@ class BrowserAppMenuButton : public AppMenuButton, ...@@ -49,7 +49,6 @@ class BrowserAppMenuButton : public AppMenuButton,
#endif #endif
// views::MenuButton: // views::MenuButton:
void OnBoundsChanged(const gfx::Rect& previous_bounds) override;
gfx::Rect GetAnchorBoundsInScreen() const override; gfx::Rect GetAnchorBoundsInScreen() const override;
void OnThemeChanged() override; void OnThemeChanged() override;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment