Index: ui/events/ozone/evdev/event_factory_evdev.cc |
diff --git a/ui/events/ozone/evdev/event_factory_evdev.cc b/ui/events/ozone/evdev/event_factory_evdev.cc |
index e87acbf961ed88eb91ef6aeb37c74d2b815dafa1..703e95d397f2b3e86a5a0b3d98bc9703420420f0 100644 |
--- a/ui/events/ozone/evdev/event_factory_evdev.cc |
+++ b/ui/events/ozone/evdev/event_factory_evdev.cc |
@@ -23,6 +23,7 @@ |
#if defined(USE_EVDEV_GESTURES) |
#include "ui/events/ozone/evdev/libgestures_glue/event_reader_libevdev_cros.h" |
#include "ui/events/ozone/evdev/libgestures_glue/gesture_interpreter_libevdev_cros.h" |
+#include "ui/events/ozone/evdev/libgestures_glue/gesture_property_provider.h" |
#endif |
#ifndef EVIOCSCLOCKID |
@@ -50,6 +51,9 @@ struct OpenInputDeviceParams { |
EventModifiersEvdev* modifiers; |
KeyboardEvdev* keyboard; |
CursorDelegateEvdev* cursor; |
+#if defined(USE_EVDEV_GESTURES) |
+ GesturePropertyProvider* gesture_property_provider; |
+#endif |
}; |
#if defined(USE_EVDEV_GESTURES) |
@@ -73,9 +77,11 @@ scoped_ptr<EventConverterEvdev> CreateConverter( |
// EventReaderLibevdevCros -> GestureInterpreterLibevdevCros -> DispatchEvent |
if (UseGesturesLibraryForDevice(devinfo)) { |
scoped_ptr<GestureInterpreterLibevdevCros> gesture_interp = make_scoped_ptr( |
- new GestureInterpreterLibevdevCros(params.modifiers, |
+ new GestureInterpreterLibevdevCros(params.id, |
+ params.modifiers, |
params.cursor, |
params.keyboard, |
+ params.gesture_property_provider, |
params.dispatch_callback)); |
return make_scoped_ptr(new EventReaderLibevdevCros( |
fd, params.path, params.id, gesture_interp.Pass())); |
@@ -154,6 +160,9 @@ EventFactoryEvdev::EventFactoryEvdev(CursorDelegateEvdev* cursor, |
base::Unretained(this))), |
keyboard_(&modifiers_, dispatch_callback_), |
cursor_(cursor), |
+#if defined(USE_EVDEV_GESTURES) |
+ gesture_property_provider_(new GesturePropertyProvider), |
+#endif |
weak_ptr_factory_(this) { |
DCHECK(device_manager_); |
} |
@@ -199,6 +208,9 @@ void EventFactoryEvdev::OnDeviceEvent(const DeviceEvent& event) { |
params->modifiers = &modifiers_; |
params->keyboard = &keyboard_; |
params->cursor = cursor_; |
+#if defined(USE_EVDEV_GESTURES) |
+ params->gesture_property_provider = gesture_property_provider_.get(); |
+#endif |
OpenInputDeviceReplyCallback reply_callback = |
base::Bind(&EventFactoryEvdev::AttachInputDevice, |