[gtk+/gtk-3-22] gdkwindow: Update cursor for tablet tools in the window



commit 18eeaf704ec93105b4bdc3408d9f8cd3909af757
Author: Carlos Garnacho <carlosg gnome org>
Date:   Tue Jul 25 15:37:10 2017 +0200

    gdkwindow: Update cursor for tablet tools in the window
    
    This check must be done explicitly on Wayland as the master device for
    tablet tools differ from the Core Pointer. This ensures that whenever a
    tablet tool is inside a window and the cursor is programmatically changed,
    it will be visually updated too.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=785375

 gdk/gdkwindow.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)
---
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
index 689d666..1c7ea53 100644
--- a/gdk/gdkwindow.c
+++ b/gdk/gdkwindow.c
@@ -6583,8 +6583,18 @@ gdk_window_set_cursor (GdkWindow *window,
 
       for (s = seats; s; s = s->next)
         {
+          GList *devices, *d;
+
           device = gdk_seat_get_pointer (s->data);
           gdk_window_set_cursor_internal (window, device, window->cursor);
+
+          devices = gdk_seat_get_slaves (s->data, GDK_SEAT_CAPABILITY_TABLET_STYLUS);
+          for (d = devices; d; d = d->next)
+            {
+              device = gdk_device_get_associated_device (d->data);
+              gdk_window_set_cursor_internal (window, device, window->cursor);
+            }
+          g_list_free (devices);
         }
 
       g_list_free (seats);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]