Files
gtk3/debian/patches/gdk-wayland-Drop-motion-hint-mask-from-seat-grab-event-ma.patch
Simon McVittie d03dca1d46 d/patches: Update to upstream gtk-3-24 branch commit 3.24.34-204-g2fcc114870
Windows- and macOS-specific changes excluded.
2022-11-15 11:28:51 +00:00

58 lines
3.0 KiB
Diff

From: Carlos Garnacho <carlosg@gnome.org>
Date: Fri, 12 Aug 2022 01:36:59 +0200
Subject: gdk/wayland: Drop motion hint mask from seat grab event masks
At best, it's just an awkward event mask sitting there for a backend
that does not need it. At worst, this may result in motion events being
eaten away in the right set of circumstances.
Avoid the pointer motion hint mask, and rely on events being further
than hints.
Related: https://gitlab.gnome.org/GNOME/gimp/-/merge_requests/534#note_1526935
Origin: upstream, 3.24.35, commit:2c65884a5e31afe3ea5f7983ec423c8e39c5e9f2
---
gdk/wayland/gdkdevice-wayland.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/gdk/wayland/gdkdevice-wayland.c b/gdk/wayland/gdkdevice-wayland.c
index 67bd322..ed6ad3b 100644
--- a/gdk/wayland/gdkdevice-wayland.c
+++ b/gdk/wayland/gdkdevice-wayland.c
@@ -4937,7 +4937,7 @@ gdk_wayland_seat_grab (GdkSeat *seat,
native,
GDK_OWNERSHIP_NONE,
owner_events,
- GDK_ALL_EVENTS_MASK,
+ GDK_ALL_EVENTS_MASK & ~GDK_POINTER_MOTION_HINT_MASK,
_gdk_display_get_next_serial (display),
evtime,
FALSE);
@@ -4959,7 +4959,7 @@ gdk_wayland_seat_grab (GdkSeat *seat,
native,
GDK_OWNERSHIP_NONE,
owner_events,
- GDK_ALL_EVENTS_MASK,
+ GDK_ALL_EVENTS_MASK & ~GDK_POINTER_MOTION_HINT_MASK,
_gdk_display_get_next_serial (display),
evtime,
FALSE);
@@ -4977,7 +4977,7 @@ gdk_wayland_seat_grab (GdkSeat *seat,
native,
GDK_OWNERSHIP_NONE,
owner_events,
- GDK_ALL_EVENTS_MASK,
+ GDK_ALL_EVENTS_MASK & ~GDK_POINTER_MOTION_HINT_MASK,
_gdk_display_get_next_serial (display),
evtime,
FALSE);
@@ -5003,7 +5003,7 @@ gdk_wayland_seat_grab (GdkSeat *seat,
native,
GDK_OWNERSHIP_NONE,
owner_events,
- GDK_ALL_EVENTS_MASK,
+ GDK_ALL_EVENTS_MASK & ~GDK_POINTER_MOTION_HINT_MASK,
_gdk_display_get_next_serial (display),
evtime,
FALSE);