| Index: ui/views/controls/menu/menu_controller.cc
|
| diff --git a/ui/views/controls/menu/menu_controller.cc b/ui/views/controls/menu/menu_controller.cc
|
| index c1bd2d64260f31d67f35cef17bc90a6c666922b5..7222ad668ad236e38a0160b0f759e79641e1a13f 100644
|
| --- a/ui/views/controls/menu/menu_controller.cc
|
| +++ b/ui/views/controls/menu/menu_controller.cc
|
| @@ -857,7 +857,7 @@ void MenuController::StartDrag(SubmenuView* source,
|
| }
|
|
|
| #if defined(OS_WIN)
|
| -bool MenuController::Dispatch(const MSG& msg) {
|
| +base::DispatchStatus MenuController::Dispatch(const MSG& msg) {
|
| DCHECK(blocking_run_);
|
|
|
| if (exit_type_ == EXIT_ALL || exit_type_ == EXIT_DESTROYED) {
|
| @@ -865,7 +865,7 @@ bool MenuController::Dispatch(const MSG& msg) {
|
| // the message on the floor.
|
| TranslateMessage(&msg);
|
| DispatchMessage(&msg);
|
| - return false;
|
| + return base::EVENT_QUIT;
|
| }
|
|
|
| // NOTE: we don't get WM_ACTIVATE or anything else interesting in here.
|
| @@ -878,7 +878,7 @@ bool MenuController::Dispatch(const MSG& msg) {
|
| item->GetDelegate()->ShowContextMenu(item, item->GetCommand(),
|
| screen_loc, false);
|
| }
|
| - return true;
|
| + return base::EVENT_PROCESSED;
|
| }
|
|
|
| // NOTE: focus wasn't changed when the menu was shown. As such, don't
|
| @@ -886,70 +886,63 @@ bool MenuController::Dispatch(const MSG& msg) {
|
| case WM_KEYDOWN: {
|
| bool result = OnKeyDown(ui::KeyboardCodeFromNative(msg));
|
| TranslateMessage(&msg);
|
| - return result;
|
| + return result ? base::EVENT_PROCESSED : base::EVENT_QUIT;
|
| }
|
| case WM_CHAR:
|
| - return !SelectByChar(static_cast<char16>(msg.wParam));
|
| -
|
| + return SelectByChar(static_cast<char16>(msg.wParam)) ?
|
| + base::EVENT_QUIT : base::EVENT_PROCESSED;
|
| case WM_KEYUP:
|
| - return true;
|
| + return base::EVENT_PROCESSED;
|
|
|
| case WM_SYSKEYUP:
|
| // We may have been shown on a system key, as such don't do anything
|
| // here. If another system key is pushed we'll get a WM_SYSKEYDOWN and
|
| // close the menu.
|
| - return true;
|
| + return base::EVENT_PROCESSED;
|
|
|
| case WM_CANCELMODE:
|
| case WM_SYSKEYDOWN:
|
| // Exit immediately on system keys.
|
| Cancel(EXIT_ALL);
|
| - return false;
|
| + return base::EVENT_QUIT;
|
|
|
| default:
|
| break;
|
| }
|
| TranslateMessage(&msg);
|
| DispatchMessage(&msg);
|
| - return exit_type_ == EXIT_NONE;
|
| + return exit_type_ != EXIT_NONE ? base::EVENT_QUIT : base::EVENT_PROCESSED;
|
| }
|
| #elif defined(USE_WAYLAND)
|
| base::MessagePumpDispatcher::DispatchStatus
|
| MenuController::Dispatch(base::wayland::WaylandEvent* ev) {
|
| - return exit_type_ != EXIT_NONE ?
|
| - base::MessagePumpDispatcher::EVENT_QUIT :
|
| - base::MessagePumpDispatcher::EVENT_PROCESSED;
|
| + return exit_type_ != EXIT_NONE ? base::EVENT_QUIT :base::EVENT_PROCESSED;
|
| }
|
|
|
| #elif defined(USE_AURA)
|
| -base::MessagePumpDispatcher::DispatchStatus
|
| - MenuController::Dispatch(XEvent* xev) {
|
| +base::DispatchStatus MenuController::Dispatch(const base::NativeEvent& xev) {
|
| + // XEvent* xev = event;
|
| if (exit_type_ == EXIT_ALL || exit_type_ == EXIT_DESTROYED) {
|
| aura::Env::GetInstance()->GetDispatcher()->Dispatch(xev);
|
| - return base::MessagePumpDispatcher::EVENT_QUIT;
|
| + return base::EVENT_QUIT;
|
| }
|
| switch (ui::EventTypeFromNative(xev)) {
|
| case ui::ET_KEY_PRESSED:
|
| if (!OnKeyDown(ui::KeyboardCodeFromNative(xev)))
|
| - return base::MessagePumpDispatcher::EVENT_QUIT;
|
| + return base::EVENT_QUIT;
|
|
|
| return SelectByChar(ui::KeyboardCodeFromNative(xev)) ?
|
| - base::MessagePumpDispatcher::EVENT_QUIT :
|
| - base::MessagePumpDispatcher::EVENT_PROCESSED;
|
| + base::EVENT_QUIT : base::EVENT_PROCESSED;
|
| case ui::ET_KEY_RELEASED:
|
| - return base::MessagePumpDispatcher::EVENT_PROCESSED;
|
| + return base::EVENT_PROCESSED;
|
| default:
|
| break;
|
| }
|
|
|
| - // TODO(oshima): Update Windows' Dispatcher to return DispatchStatus
|
| - // instead of bool.
|
| if (aura::Env::GetInstance()->GetDispatcher()->Dispatch(xev) ==
|
| - base::MessagePumpDispatcher::EVENT_IGNORED)
|
| - return EVENT_IGNORED;
|
| - return exit_type_ != EXIT_NONE ?
|
| - base::MessagePumpDispatcher::EVENT_QUIT :
|
| - base::MessagePumpDispatcher::EVENT_PROCESSED;
|
| + base::EVENT_IGNORED)
|
| + return base::EVENT_IGNORED;
|
| + return exit_type_ != EXIT_NONE ? base::EVENT_QUIT : base::EVENT_PROCESSED;
|
| }
|
| #endif
|
|
|
|
|