summaryrefslogtreecommitdiffstats
path: root/views/controls/menu/menu_controller.cc
diff options
context:
space:
mode:
Diffstat (limited to 'views/controls/menu/menu_controller.cc')
-rw-r--r--views/controls/menu/menu_controller.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/views/controls/menu/menu_controller.cc b/views/controls/menu/menu_controller.cc
index 2622523..22540e3 100644
--- a/views/controls/menu/menu_controller.cc
+++ b/views/controls/menu/menu_controller.cc
@@ -822,8 +822,14 @@ bool MenuController::Dispatch(GdkEvent* event) {
case GDK_KEY_PRESS: {
base::KeyboardCode win_keycode =
base::WindowsKeyCodeForGdkKeyCode(event->key.keyval);
+
if (!OnKeyDown(win_keycode))
return false;
+
+ // OnKeyDown may have set exit_type_.
+ if (exit_type_ != EXIT_NONE)
+ return false;
+
guint32 keycode = gdk_keyval_to_unicode(event->key.keyval);
if (keycode)
return !SelectByChar(keycode);