Skip to content

Commit

Permalink
Change MenuButtonController to take in a Button rather than a
Browse files Browse the repository at this point in the history
MenuButton.

This change propagates so that
MenuButtonListener::OnMenuButtonClicked() will need to take a Button as
well.

Bug: 901183
Change-Id: Id4f37ce2563ab7bfa287b97e8b6af8baffcad2fd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1500935
Commit-Queue: Charlene Yan <cyan@chromium.org>
Reviewed-by: Michael Wasserman <msw@chromium.org>
Reviewed-by: Peter Boström <pbos@chromium.org>
Reviewed-by: Trent Apted <tapted@chromium.org>
Cr-Commit-Position: refs/heads/master@{#647349}
  • Loading branch information
Charlene Yan authored and Commit Bot committed Apr 3, 2019
1 parent 2ca066c commit 7d2ff53
Show file tree
Hide file tree
Showing 21 changed files with 31 additions and 34 deletions.
2 changes: 1 addition & 1 deletion ash/shelf/login_shelf_view.cc
Original file line number Diff line number Diff line change
Expand Up @@ -323,7 +323,7 @@ class KioskAppsButton : public views::MenuButton,
}

// views::MenuButtonListener:
void OnMenuButtonClicked(MenuButton* source,
void OnMenuButtonClicked(Button* source,
const gfx::Point& point,
const ui::Event* event) override {
if (!is_launch_enabled_)
Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/bookmarks/bookmark_bar_view.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1328,7 +1328,7 @@ bool BookmarkBarView::CanStartDragForView(views::View* sender,
return true;
}

void BookmarkBarView::OnMenuButtonClicked(views::MenuButton* view,
void BookmarkBarView::OnMenuButtonClicked(views::Button* view,
const gfx::Point& point,
const ui::Event* event) {
const BookmarkNode* node;
Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/bookmarks/bookmark_bar_view.h
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@ class BookmarkBarView : public views::AccessiblePaneView,
const gfx::Point& p) override;

// views::MenuButtonListener:
void OnMenuButtonClicked(views::MenuButton* source,
void OnMenuButtonClicked(views::Button* source,
const gfx::Point& point,
const ui::Event* event) override;

Expand Down
4 changes: 2 additions & 2 deletions chrome/browser/ui/views/frame/hosted_app_menu_button.cc
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
#include "ui/gfx/paint_vector_icon.h"
#include "ui/views/animation/ink_drop.h"
#include "ui/views/border.h"
#include "ui/views/controls/button/menu_button.h"
#include "ui/views/controls/button/button.h"
#include "ui/views/view_class_properties.h"
#include "ui/views/window/hit_test_utils.h"

Expand Down Expand Up @@ -71,7 +71,7 @@ void HostedAppMenuButton::StartHighlightAnimation() {
this, &HostedAppMenuButton::FadeHighlightOff);
}

void HostedAppMenuButton::OnMenuButtonClicked(views::MenuButton* source,
void HostedAppMenuButton::OnMenuButtonClicked(views::Button* source,
const gfx::Point& point,
const ui::Event* event) {
Browser* browser = browser_view_->browser();
Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/frame/hosted_app_menu_button.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ class HostedAppMenuButton : public AppMenuButton,
void StartHighlightAnimation();

// views::MenuButtonListener:
void OnMenuButtonClicked(views::MenuButton* source,
void OnMenuButtonClicked(views::Button* source,
const gfx::Point& point,
const ui::Event* event) override;

Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/frame/opaque_browser_frame_view.cc
Original file line number Diff line number Diff line change
Expand Up @@ -349,7 +349,7 @@ void OpaqueBrowserFrameView::ButtonPressed(views::Button* sender,
}
}

void OpaqueBrowserFrameView::OnMenuButtonClicked(views::MenuButton* source,
void OpaqueBrowserFrameView::OnMenuButtonClicked(views::Button* source,
const gfx::Point& point,
const ui::Event* event) {
#if defined(OS_LINUX)
Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/frame/opaque_browser_frame_view.h
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ class OpaqueBrowserFrameView : public BrowserNonClientFrameView,
void ButtonPressed(views::Button* sender, const ui::Event& event) override;

// views::MenuButtonListener:
void OnMenuButtonClicked(views::MenuButton* source,
void OnMenuButtonClicked(views::Button* source,
const gfx::Point& point,
const ui::Event* event) override;

Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/hover_button.cc
Original file line number Diff line number Diff line change
Expand Up @@ -396,7 +396,7 @@ void HoverButton::SetSubtitleColor(SkColor color) {
subtitle_->SetEnabledColor(color);
}

void HoverButton::OnMenuButtonClicked(MenuButton* source,
void HoverButton::OnMenuButtonClicked(Button* source,
const gfx::Point& point,
const ui::Event* event) {
if (listener_)
Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/hover_button.h
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ class HoverButton : public views::MenuButton, public views::MenuButtonListener {

protected:
// views::MenuButtonListener:
void OnMenuButtonClicked(MenuButton* source,
void OnMenuButtonClicked(Button* source,
const gfx::Point& point,
const ui::Event* event) override;

Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/menu_model_adapter_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@ class MenuModelAdapterTest : public ViewEventTestBase,
}

// views::MenuButtonListener implementation.
void OnMenuButtonClicked(views::MenuButton* source,
void OnMenuButtonClicked(views::Button* source,
const gfx::Point& point,
const ui::Event* event) override {
gfx::Point screen_location;
Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/menu_test_base.cc
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ gfx::Size MenuTestBase::GetPreferredSizeForContents() const {
return button_->GetPreferredSize();
}

void MenuTestBase::OnMenuButtonClicked(views::MenuButton* source,
void MenuTestBase::OnMenuButtonClicked(views::Button* source,
const gfx::Point& point,
const ui::Event* event) {
gfx::Point screen_location;
Expand Down
4 changes: 2 additions & 2 deletions chrome/browser/ui/views/menu_test_base.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
#include "ui/views/controls/menu/menu_delegate.h"

namespace views {
class MenuButton;
class Button;
class MenuItemView;
class MenuRunner;
}
Expand Down Expand Up @@ -76,7 +76,7 @@ class MenuTestBase : public ViewEventTestBase,
gfx::Size GetPreferredSizeForContents() const override;

// views::MenuButtonListener implementation
void OnMenuButtonClicked(views::MenuButton* source,
void OnMenuButtonClicked(views::Button* source,
const gfx::Point& point,
const ui::Event* event) override;

Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/toolbar/toolbar_action_view.cc
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ void ToolbarActionView::UpdateState() {
SchedulePaint();
}

void ToolbarActionView::OnMenuButtonClicked(views::MenuButton* sender,
void ToolbarActionView::OnMenuButtonClicked(views::Button* sender,
const gfx::Point& point,
const ui::Event* event) {
if (!view_controller_->IsEnabled(GetCurrentWebContents())) {
Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/toolbar/toolbar_action_view.h
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ class ToolbarActionView : public views::MenuButton,
void UpdateState() override;

// views::MenuButtonListener:
void OnMenuButtonClicked(views::MenuButton* source,
void OnMenuButtonClicked(views::Button* source,
const gfx::Point& point,
const ui::Event* event) override;

Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/toolbar/toolbar_view.cc
Original file line number Diff line number Diff line change
Expand Up @@ -407,7 +407,7 @@ void ToolbarView::ShowBookmarkBubble(
////////////////////////////////////////////////////////////////////////////////
// ToolbarView, views::MenuButtonListener implementation:

void ToolbarView::OnMenuButtonClicked(views::MenuButton* source,
void ToolbarView::OnMenuButtonClicked(views::Button* source,
const gfx::Point& point,
const ui::Event* event) {
TRACE_EVENT0("views", "ToolbarView::OnMenuButtonClicked");
Expand Down
2 changes: 1 addition & 1 deletion chrome/browser/ui/views/toolbar/toolbar_view.h
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ class ToolbarView : public views::AccessiblePaneView,
}

// views::MenuButtonListener:
void OnMenuButtonClicked(views::MenuButton* source,
void OnMenuButtonClicked(views::Button* source,
const gfx::Point& point,
const ui::Event* event) override;

Expand Down
8 changes: 3 additions & 5 deletions ui/views/controls/button/menu_button_controller.cc
Original file line number Diff line number Diff line change
Expand Up @@ -63,10 +63,10 @@ MenuButtonController::PressedLock::~PressedLock() {
////////////////////////////////////////////////////////////////////////////////

MenuButtonController::MenuButtonController(
MenuButton* menu_button,
Button* button,
MenuButtonListener* listener,
std::unique_ptr<ButtonControllerDelegate> delegate)
: ButtonController(menu_button, std::move(delegate)), listener_(listener) {}
: ButtonController(button, std::move(delegate)), listener_(listener) {}

MenuButtonController::~MenuButtonController() = default;

Expand Down Expand Up @@ -238,9 +238,7 @@ bool MenuButtonController::Activate(const ui::Event* event) {

// We don't set our state here. It's handled in the MenuController code or
// by our click listener.
// TODO(cyan): Remove the static cast.
listener_->OnMenuButtonClicked(static_cast<MenuButton*>(button()),
menu_position, event);
listener_->OnMenuButtonClicked(button(), menu_position, event);

if (!ref) {
// The menu was deleted while showing. Don't attempt any processing.
Expand Down
3 changes: 1 addition & 2 deletions ui/views/controls/button/menu_button_controller.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,7 @@ class VIEWS_EXPORT MenuButtonController : public ButtonController {
DISALLOW_COPY_AND_ASSIGN(PressedLock);
};

// TODO(cyan): MenuButtonController should take in a Button.
MenuButtonController(MenuButton* menu_button,
MenuButtonController(Button* button,
MenuButtonListener* listener,
std::unique_ptr<ButtonControllerDelegate> delegate);
~MenuButtonController() override;
Expand Down
4 changes: 2 additions & 2 deletions ui/views/controls/button/menu_button_listener.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ class Event;
}

namespace views {
class MenuButton;
class Button;

// An interface implemented by an object to let it know that a menu button was
// clicked.
Expand All @@ -26,7 +26,7 @@ class VIEWS_EXPORT MenuButtonListener {
// point to display the menu, and |event| is the event causing the click, if
// any. (Note: "Clicked" refers to any activation, including e.g. accelerators
// and key events).
virtual void OnMenuButtonClicked(MenuButton* source,
virtual void OnMenuButtonClicked(Button* source,
const gfx::Point& point,
const ui::Event* event) = 0;

Expand Down
10 changes: 5 additions & 5 deletions ui/views/controls/button/menu_button_unittest.cc
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ class TestMenuButtonListener : public MenuButtonListener {
TestMenuButtonListener() = default;
~TestMenuButtonListener() override = default;

void OnMenuButtonClicked(MenuButton* source,
void OnMenuButtonClicked(Button* source,
const gfx::Point& point,
const ui::Event* event) override {
last_source_ = source;
Expand Down Expand Up @@ -186,7 +186,7 @@ class PressStateMenuButtonListener : public MenuButtonListener {

void set_menu_button(MenuButton* menu_button) { menu_button_ = menu_button; }

void OnMenuButtonClicked(MenuButton* source,
void OnMenuButtonClicked(Button* source,
const gfx::Point& point,
const ui::Event* event) override {
pressed_lock_ = menu_button_->button_controller()->TakeLock();
Expand Down Expand Up @@ -316,13 +316,13 @@ class TestShowSiblingButtonListener : public MenuButtonListener {
TestShowSiblingButtonListener() = default;
~TestShowSiblingButtonListener() override = default;

void OnMenuButtonClicked(MenuButton* source,
void OnMenuButtonClicked(Button* source,
const gfx::Point& point,
const ui::Event* event) override {
// The MenuButton itself doesn't set the PRESSED state during Activate() or
// OnMenuButtonClicked(). That should be handled by the MenuController or,
// if no menu is shown, the listener.
EXPECT_EQ(Button::STATE_HOVERED, static_cast<MenuButton*>(source)->state());
EXPECT_EQ(Button::STATE_HOVERED, source->state());
}

private:
Expand Down Expand Up @@ -683,7 +683,7 @@ class DestroyButtonInGestureListener : public MenuButtonListener {

private:
// MenuButtonListener:
void OnMenuButtonClicked(MenuButton* source,
void OnMenuButtonClicked(Button* source,
const gfx::Point& point,
const ui::Event* event) override {
menu_button_.reset();
Expand Down
4 changes: 2 additions & 2 deletions ui/views/examples/menu_example.cc
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ class ExampleMenuButton : public MenuButton, public MenuButtonListener {

private:
// MenuButtonListener:
void OnMenuButtonClicked(MenuButton* source,
void OnMenuButtonClicked(Button* source,
const gfx::Point& point,
const ui::Event* event) override;

Expand Down Expand Up @@ -174,7 +174,7 @@ ExampleMenuButton::ExampleMenuButton(const base::string16& test)

ExampleMenuButton::~ExampleMenuButton() = default;

void ExampleMenuButton::OnMenuButtonClicked(MenuButton* source,
void ExampleMenuButton::OnMenuButtonClicked(Button* source,
const gfx::Point& point,
const ui::Event* event) {
menu_runner_ =
Expand Down

0 comments on commit 7d2ff53

Please sign in to comment.