Commit 02fcc703 authored by Charlene Yan's avatar Charlene Yan Committed by Commit Bot

Allow the Extensions Menu to be accessible through keyboard!

Bug: 1003765
Change-Id: If6e35db7a420a77ee2f532e3545ab1c1626cf54e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1807575
Commit-Queue: Charlene Yan <cyan@chromium.org>
Reviewed-by: default avatarPeter Boström <pbos@chromium.org>
Cr-Commit-Position: refs/heads/master@{#697819}
parent 699bcbaa
...@@ -27,6 +27,7 @@ ExtensionsMenuButton::ExtensionsMenuButton( ...@@ -27,6 +27,7 @@ ExtensionsMenuButton::ExtensionsMenuButton(
parent_(parent), parent_(parent),
controller_(controller) { controller_(controller) {
SetInkDropMode(InkDropMode::ON); SetInkDropMode(InkDropMode::ON);
SetFocusBehavior(FocusBehavior::ALWAYS);
SetButtonController(std::make_unique<HoverButtonController>( SetButtonController(std::make_unique<HoverButtonController>(
this, this, this, this,
std::make_unique<views::Button::DefaultButtonControllerDelegate>(this))); std::make_unique<views::Button::DefaultButtonControllerDelegate>(this)));
......
...@@ -25,6 +25,15 @@ ...@@ -25,6 +25,15 @@
namespace { namespace {
constexpr int EXTENSION_CONTEXT_MENU = 13; constexpr int EXTENSION_CONTEXT_MENU = 13;
constexpr int EXTENSION_PINNING = 14; constexpr int EXTENSION_PINNING = 14;
std::unique_ptr<views::ImageButton> CreateButton(
int id,
views::ButtonListener* listener) {
auto button = views::CreateVectorImageButton(listener);
button->SetFocusBehavior(views::View::FocusBehavior::ALWAYS);
button->SetID(id);
return button;
}
} // namespace } // namespace
ExtensionsMenuItemView::ExtensionsMenuItemView( ExtensionsMenuItemView::ExtensionsMenuItemView(
...@@ -56,16 +65,15 @@ ExtensionsMenuItemView::ExtensionsMenuItemView( ...@@ -56,16 +65,15 @@ ExtensionsMenuItemView::ExtensionsMenuItemView(
ui::NativeTheme::GetInstanceForNativeUi()->GetSystemColor( ui::NativeTheme::GetInstanceForNativeUi()->GetSystemColor(
ui::NativeTheme::kColorId_DefaultIconColor); ui::NativeTheme::kColorId_DefaultIconColor);
auto pin_button = views::CreateVectorImageButton(this); auto pin_button = CreateButton(EXTENSION_PINNING, this);
pin_button->SetID(EXTENSION_PINNING);
pin_button->set_ink_drop_base_color(icon_color); pin_button->set_ink_drop_base_color(icon_color);
pin_button_ = pin_button.get(); pin_button_ = pin_button.get();
AddChildView(std::move(pin_button)); AddChildView(std::move(pin_button));
auto context_menu_button = views::CreateVectorImageButton(nullptr); auto context_menu_button = CreateButton(EXTENSION_CONTEXT_MENU, nullptr);
views::SetImageFromVectorIcon(context_menu_button.get(), kBrowserToolsIcon, views::SetImageFromVectorIcon(context_menu_button.get(), kBrowserToolsIcon,
kSecondaryIconSizeDp, icon_color); kSecondaryIconSizeDp, icon_color);
context_menu_button->SetID(EXTENSION_CONTEXT_MENU);
context_menu_button->SetTooltipText( context_menu_button->SetTooltipText(
l10n_util::GetStringUTF16(IDS_EXTENSIONS_MENU_CONTEXT_MENU_TOOLTIP)); l10n_util::GetStringUTF16(IDS_EXTENSIONS_MENU_CONTEXT_MENU_TOOLTIP));
context_menu_button->SetButtonController( context_menu_button->SetButtonController(
......
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