The property is tablet-wide, not just per tool. So when one tool is updated,
run through all other devices that share the same underlying device.

Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
---
 src/xf86libinput.c | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/src/xf86libinput.c b/src/xf86libinput.c
index 5f7a551..9231ba6 100644
--- a/src/xf86libinput.c
+++ b/src/xf86libinput.c
@@ -3485,7 +3485,28 @@ LibinputSetPropertyLeftHanded(DeviceIntPtr dev,
                if (!supported && left_handed)
                        return BadValue;
        } else {
+               struct xf86libinput *other;
+
                driver_data->options.left_handed = *data;
+
+               xorg_list_for_each_entry(other,
+                                        
&driver_data->shared_device->device_list,
+                                        shared_device_link) {
+                       DeviceIntPtr other_device = other->pInfo->dev;
+
+                       if (other->options.left_handed == *data)
+                               continue;
+
+                       XIChangeDeviceProperty(other_device,
+                                              atom,
+                                              val->type,
+                                              val->format,
+                                              PropModeReplace,
+                                              val->size,
+                                              val->data,
+                                              TRUE);
+               }
+
        }
 
        return Success;
-- 
2.9.3

_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to