Index: ash/shell.cc |
diff --git a/ash/shell.cc b/ash/shell.cc |
index ef3686085518ff1135d95edc0e8bdbc45fcd4ba7..9cfb39edb4dd3f893a6d3ee49fb1fc5ba5b95d19 100644 |
--- a/ash/shell.cc |
+++ b/ash/shell.cc |
@@ -9,6 +9,7 @@ |
#include "ash/accelerators/accelerator_controller.h" |
#include "ash/accelerators/accelerator_delegate.h" |
+#include "ash/accelerators/ash_menu_event_filter_delegate.h" |
#include "ash/accelerators/focus_manager_factory.h" |
#include "ash/accelerators/nested_accelerator_delegate.h" |
#include "ash/ash_switches.h" |
@@ -101,6 +102,7 @@ |
#include "ui/keyboard/keyboard_switches.h" |
#include "ui/keyboard/keyboard_util.h" |
#include "ui/message_center/message_center.h" |
+#include "ui/views/controls/menu/menu_event_filter.h" |
#include "ui/views/corewm/tooltip_aura.h" |
#include "ui/views/corewm/tooltip_controller.h" |
#include "ui/views/focus/focus_manager_factory.h" |
@@ -920,6 +922,9 @@ void Shell::Init(const ShellInitParams& init_params) { |
nested_accelerator_controller_.reset( |
new ::wm::NestedAcceleratorController(new NestedAcceleratorDelegate)); |
accelerator_controller_.reset(new AcceleratorController); |
+ |
+ menu_event_filter_delegate_.reset(new AshMenuEventFilterDelegate); |
oshima
2015/09/02 17:08:21
can you reset this in reverse order?
afakhry
2015/09/02 18:18:38
I used this order since AshMenuEventFilterDelegate
|
+ |
maximize_mode_controller_.reset(new MaximizeModeController()); |
AddPreTargetHandler(window_tree_host_manager_->input_method_event_handler()); |
@@ -1136,6 +1141,9 @@ void Shell::InitRootWindow(aura::Window* root_window) { |
aura::client::SetDispatcherClient(root_window, |
nested_accelerator_controller_.get()); |
} |
+ |
+ views::MenuEventFilter::SetMenuEventFilterDelegate( |
+ root_window, menu_event_filter_delegate_.get()); |
} |
bool Shell::CanWindowReceiveEvents(aura::Window* window) { |