Index: ui/wm/core/compound_event_filter.cc |
diff --git a/ui/wm/core/compound_event_filter.cc b/ui/wm/core/compound_event_filter.cc |
index a1eb7ef186ac64014cb69c5f4b81f33e19316a9b..3fa203fa4ae3b9df129d668a6b5df6df0e93dc6c 100644 |
--- a/ui/wm/core/compound_event_filter.cc |
+++ b/ui/wm/core/compound_event_filter.cc |
@@ -292,6 +292,17 @@ void CompoundEventFilter::OnGestureEvent(ui::GestureEvent* event) { |
while (!event->stopped_propagation() && (handler = it.GetNext()) != NULL) |
handler->OnGestureEvent(event); |
} |
+ |
+#if defined(OS_WIN) |
+ // A Win8 edge swipe event is a special event that does not have location |
+ // information associated with it, and is not preceeded by an ET_TOUCH_PRESSED |
+ // event. So we treat it specially here. |
+ if (!event->handled() && event->type() == ui::ET_GESTURE_WIN8_EDGE_SWIPE && |
+ !aura::Env::GetInstance()->IsMouseButtonDown()) { |
+ SetMouseEventsEnableStateOnEvent( |
+ static_cast<aura::Window*>(event->target()), event, false); |
sky
2014/03/13 15:55:09
Who ends up enabling the mouse events?
zturner
2014/03/13 16:15:59
Receiving another mouse event re-enables them. Sc
|
+ } |
+#endif |
} |
} // namespace corewm |