Index: ui/views/controls/menu/menu_host_root_view.cc |
diff --git a/ui/views/controls/menu/menu_host_root_view.cc b/ui/views/controls/menu/menu_host_root_view.cc |
index 3bce4a49b6e730c7bf2a08815af388948ca52107..a46b81b8327e1e10a37ab657eaa8eddefb515e24 100644 |
--- a/ui/views/controls/menu/menu_host_root_view.cc |
+++ b/ui/views/controls/menu/menu_host_root_view.cc |
@@ -55,15 +55,21 @@ bool MenuHostRootView::OnMouseWheel(const ui::MouseWheelEvent& event) { |
GetMenuController()->OnMouseWheel(submenu_, event); |
} |
-void MenuHostRootView::DispatchGestureEvent(ui::GestureEvent* event) { |
- RootView::DispatchGestureEvent(event); |
- if (event->handled()) |
- return; |
- // ChromeOS uses MenuController to forward events like other |
- // mouse events. |
- if (!GetMenuController()) |
- return; |
- GetMenuController()->OnGestureEvent(submenu_, event); |
+ui::EventDispatchDetails MenuHostRootView::OnEventFromSource(ui::Event* event) { |
+ ui::EventDispatchDetails result = RootView::OnEventFromSource(event); |
+ |
+ if (event->IsGestureEvent()) { |
+ ui::GestureEvent* gesture_event = event->AsGestureEvent(); |
+ if (gesture_event->handled()) |
+ return result; |
+ // ChromeOS uses MenuController to forward events like other |
+ // mouse events. |
+ if (!GetMenuController()) |
+ return result; |
+ GetMenuController()->OnGestureEvent(submenu_, gesture_event); |
+ } |
+ |
+ return result; |
} |
MenuController* MenuHostRootView::GetMenuController() { |