[clutter/clutter-1.22] DeviceManagerXi2: Update cached core pointer in getter if NULL



commit 5281425a53aedaf3b03f2d658325e5d1413d36cc
Author: Jonas Ã…dahl <jadahl gmail com>
Date:   Sat May 3 17:42:46 2014 +0200

    DeviceManagerXi2: Update cached core pointer in getter if NULL
    
    XIGetClientPointer() may return the device id '0' when called early.
    This patch makes pointer cursors work in nested mutter Wayland
    sessions again.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=729462

 clutter/x11/clutter-device-manager-xi2.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)
---
diff --git a/clutter/x11/clutter-device-manager-xi2.c b/clutter/x11/clutter-device-manager-xi2.c
index 375b69d..769463b 100644
--- a/clutter/x11/clutter-device-manager-xi2.c
+++ b/clutter/x11/clutter-device-manager-xi2.c
@@ -1395,6 +1395,9 @@ clutter_device_manager_xi2_get_core_device (ClutterDeviceManager   *manager,
   switch (device_type)
     {
     case CLUTTER_POINTER_DEVICE:
+      if (manager_xi2->client_pointer == NULL)
+        update_client_pointer (manager_xi2);
+
       return manager_xi2->client_pointer;
 
     case CLUTTER_KEYBOARD_DEVICE:


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