[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master 75bdf15c29: Update XI2 device use on slave attachment and detachm
From: |
Po Lu |
Subject: |
master 75bdf15c29: Update XI2 device use on slave attachment and detachment |
Date: |
Sat, 9 Apr 2022 23:07:44 -0400 (EDT) |
branch: master
commit 75bdf15c2972e216a2c10a7562d96ad217192356
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>
Update XI2 device use on slave attachment and detachment
* src/xterm.c (handle_one_xevent): Update whether device is a
master device when it's detached or attached.
---
src/xterm.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/src/xterm.c b/src/xterm.c
index 14a1506604..34b7c026be 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -17741,6 +17741,26 @@ handle_one_xevent (struct x_display_info *dpyinfo,
}
else if (hev->info[i].flags & XIDeviceDisabled)
disabled[n_disabled++] = hev->info[i].deviceid;
+ else if (hev->info[i].flags & XISlaveDetached
+ || hev->info[i].flags & XISlaveAttached)
+ {
+ device = xi_device_from_id (dpyinfo,
hev->info[i].deviceid);
+ x_catch_errors (dpyinfo->display);
+ info = XIQueryDevice (dpyinfo->display,
hev->info[i].deviceid,
+ &ndevices);
+ x_uncatch_errors ();
+
+ if (info)
+ {
+ if (device && info->enabled)
+ device->master_p = (info->use == XIMasterKeyboard
+ || info->use ==
XIMasterPointer);
+ else if (device)
+ disabled[n_disabled++] = hev->info[i].deviceid;
+
+ XIFreeDeviceInfo (info);
+ }
+ }
}
if (n_disabled)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master 75bdf15c29: Update XI2 device use on slave attachment and detachment,
Po Lu <=