Commit a95f73b0 authored by Caroline Rising's avatar Caroline Rising Committed by Commit Bot

Make ExtensionsToolbarButton's button controller a MenuButtonController.

This is needed to have access to MenuButtonController::PressedLock and ToolbarActionView assumes that this will exist for a popup's reference button.

Bug: 995448
Change-Id: I4855d4e30c38d530c6e8eadf7047ddc518258977
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1919660Reviewed-by: default avatarDana Fried <dfried@chromium.org>
Commit-Queue: Dana Fried <dfried@chromium.org>
Cr-Commit-Position: refs/heads/master@{#715969}
parent 090c7f82
...@@ -23,6 +23,13 @@ ExtensionsToolbarButton::ExtensionsToolbarButton( ...@@ -23,6 +23,13 @@ ExtensionsToolbarButton::ExtensionsToolbarButton(
: ToolbarButton(this), : ToolbarButton(this),
browser_(browser), browser_(browser),
extensions_container_(extensions_container) { extensions_container_(extensions_container) {
std::unique_ptr<views::MenuButtonController> menu_button_controller =
std::make_unique<views::MenuButtonController>(
this, this,
std::make_unique<views::Button::DefaultButtonControllerDelegate>(
this));
menu_button_controller_ = menu_button_controller.get();
SetButtonController(std::move(menu_button_controller));
SetTooltipText(l10n_util::GetStringUTF16(IDS_TOOLTIP_EXTENSIONS_BUTTON)); SetTooltipText(l10n_util::GetStringUTF16(IDS_TOOLTIP_EXTENSIONS_BUTTON));
button_controller()->set_notify_action( button_controller()->set_notify_action(
views::ButtonController::NotifyAction::kOnPress); views::ButtonController::NotifyAction::kOnPress);
......
...@@ -10,6 +10,10 @@ ...@@ -10,6 +10,10 @@
class Browser; class Browser;
class ExtensionsToolbarContainer; class ExtensionsToolbarContainer;
namespace views {
class MenuButtonController;
} // namespace views
// Button in the toolbar that provides access to the corresponding extensions // Button in the toolbar that provides access to the corresponding extensions
// menu. // menu.
class ExtensionsToolbarButton : public ToolbarButton, class ExtensionsToolbarButton : public ToolbarButton,
...@@ -25,6 +29,7 @@ class ExtensionsToolbarButton : public ToolbarButton, ...@@ -25,6 +29,7 @@ class ExtensionsToolbarButton : public ToolbarButton,
void ButtonPressed(views::Button* sender, const ui::Event& event) override; void ButtonPressed(views::Button* sender, const ui::Event& event) override;
Browser* const browser_; Browser* const browser_;
views::MenuButtonController* menu_button_controller_;
ExtensionsToolbarContainer* const extensions_container_; ExtensionsToolbarContainer* const extensions_container_;
DISALLOW_COPY_AND_ASSIGN(ExtensionsToolbarButton); DISALLOW_COPY_AND_ASSIGN(ExtensionsToolbarButton);
......
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