[mutter/wip/carlosg/input-thread: 40/91] backends: Drop GDK device querying code from MetaCursorTracker
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter/wip/carlosg/input-thread: 40/91] backends: Drop GDK device querying code from MetaCursorTracker
- Date: Tue, 6 Oct 2020 21:13:46 +0000 (UTC)
commit f8937b426ec2b8d294ad8a6282ee8aaa8f5fcba7
Author: Carlos Garnacho <carlosg gnome org>
Date: Sat Jun 6 13:04:32 2020 +0200
backends: Drop GDK device querying code from MetaCursorTracker
Clutter behavior is now equivalent to GDK's on X11, avoid poking to
GDK here.
https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1403
src/backends/meta-cursor-tracker.c | 56 ++++----------------------------------
1 file changed, 5 insertions(+), 51 deletions(-)
---
diff --git a/src/backends/meta-cursor-tracker.c b/src/backends/meta-cursor-tracker.c
index 90fc1b6a9a..f90fd768b0 100644
--- a/src/backends/meta-cursor-tracker.c
+++ b/src/backends/meta-cursor-tracker.c
@@ -31,8 +31,6 @@
#include "backends/meta-cursor-tracker-private.h"
-#include <gdk/gdk.h>
-#include <gdk/gdkx.h>
#include <string.h>
#include "backends/meta-backend-private.h"
@@ -464,28 +462,10 @@ meta_cursor_tracker_update_position (MetaCursorTracker *tracker,
g_signal_emit (tracker, signals[CURSOR_MOVED], 0, new_x, new_y);
}
-static void
-get_pointer_position_gdk (int *x,
- int *y,
- int *mods)
-{
- GdkSeat *gseat;
- GdkDevice *gdevice;
- GdkScreen *gscreen;
-
- gseat = gdk_display_get_default_seat (gdk_display_get_default ());
- gdevice = gdk_seat_get_pointer (gseat);
-
- gdk_device_get_position (gdevice, &gscreen, x, y);
- if (mods)
- gdk_device_get_state (gdevice,
- gdk_screen_get_root_window (gscreen),
- NULL, (GdkModifierType*)mods);
-}
-
-static void
-get_pointer_position_clutter (graphene_point_t *point,
- int *mods)
+void
+meta_cursor_tracker_get_pointer (MetaCursorTracker *tracker,
+ graphene_point_t *coords,
+ ClutterModifierType *mods)
{
ClutterSeat *seat;
ClutterInputDevice *cdevice;
@@ -493,33 +473,7 @@ get_pointer_position_clutter (graphene_point_t *point,
seat = clutter_backend_get_default_seat (clutter_get_default_backend ());
cdevice = clutter_seat_get_pointer (seat);
- clutter_input_device_get_coords (cdevice, NULL, point);
- if (mods)
- *mods = clutter_input_device_get_modifier_state (cdevice);
-}
-
-void
-meta_cursor_tracker_get_pointer (MetaCursorTracker *tracker,
- graphene_point_t *coords,
- ClutterModifierType *mods)
-{
- /* We can't use the clutter interface when not running as a wayland compositor,
- because we need to query the server, rather than using the last cached value.
- OTOH, on wayland we can't use GDK, because that only sees the events
- we forward to xwayland.
- */
- if (meta_is_wayland_compositor ())
- {
- get_pointer_position_clutter (coords, (int*)mods);
- }
- else
- {
- int x, y;
-
- get_pointer_position_gdk (&x, &y, (int*)mods);
- coords->x = x;
- coords->y = y;
- }
+ clutter_seat_query_state (seat, cdevice, NULL, coords, mods);
}
void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]