summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJasper St. Pierre <jstpierre@mecheye.net>2014-05-27 14:21:54 -0400
committerJasper St. Pierre <jstpierre@mecheye.net>2014-06-11 16:42:05 -0400
commit6af944fe2c9b9d9b7cd1c1710aa885ba0b3d37ff (patch)
tree8fbcc9dbc63aded732374d3b1b3e98c0821ac6f4
parent12fc394b92178377f936bb58e444e7ac1a7e34a3 (diff)
downloadmutter-6af944fe2c9b9d9b7cd1c1710aa885ba0b3d37ff.tar.gz
native: Add a warp_pointer implementation
Use the new clutter_evdev_warp_pointer method to implement it.
-rw-r--r--src/backends/meta-backend.c9
-rw-r--r--src/backends/native/meta-backend-native.c16
2 files changed, 16 insertions, 9 deletions
diff --git a/src/backends/meta-backend.c b/src/backends/meta-backend.c
index 24da0ddcf..3cfb95110 100644
--- a/src/backends/meta-backend.c
+++ b/src/backends/meta-backend.c
@@ -104,14 +104,6 @@ meta_backend_real_ungrab_device (MetaBackend *backend,
}
static void
-meta_backend_real_warp_pointer (MetaBackend *backend,
- int x,
- int y)
-{
- /* Do nothing */
-}
-
-static void
meta_backend_class_init (MetaBackendClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
@@ -122,7 +114,6 @@ meta_backend_class_init (MetaBackendClass *klass)
klass->create_cursor_renderer = meta_backend_real_create_cursor_renderer;
klass->grab_device = meta_backend_real_grab_device;
klass->ungrab_device = meta_backend_real_ungrab_device;
- klass->warp_pointer = meta_backend_real_warp_pointer;
}
static void
diff --git a/src/backends/native/meta-backend-native.c b/src/backends/native/meta-backend-native.c
index ea40d55ae..e21788020 100644
--- a/src/backends/native/meta-backend-native.c
+++ b/src/backends/native/meta-backend-native.c
@@ -175,6 +175,20 @@ meta_backend_native_create_cursor_renderer (MetaBackend *backend)
}
static void
+meta_backend_native_warp_pointer (MetaBackend *backend,
+ int x,
+ int y)
+{
+ ClutterDeviceManager *manager = clutter_device_manager_get_default ();
+ ClutterInputDevice *device = clutter_device_manager_get_core_device (manager, CLUTTER_POINTER_DEVICE);
+
+ /* XXX */
+ guint32 time_ = 0;
+
+ clutter_evdev_warp_pointer (device, time_, x, y);
+}
+
+static void
meta_backend_native_class_init (MetaBackendNativeClass *klass)
{
MetaBackendClass *backend_class = META_BACKEND_CLASS (klass);
@@ -183,6 +197,8 @@ meta_backend_native_class_init (MetaBackendNativeClass *klass)
backend_class->create_idle_monitor = meta_backend_native_create_idle_monitor;
backend_class->create_monitor_manager = meta_backend_native_create_monitor_manager;
backend_class->create_cursor_renderer = meta_backend_native_create_cursor_renderer;
+
+ backend_class->warp_pointer = meta_backend_native_warp_pointer;
}
static void