diff options
author | Gatis Paeglis <gatis.paeglis@qt.io> | 2017-07-19 09:09:16 +0200 |
---|---|---|
committer | Gatis Paeglis <gatis.paeglis@qt.io> | 2017-07-19 12:48:55 +0000 |
commit | e71f7d7736ec2c845206daa5a48921affbcf8e44 (patch) | |
tree | 51300694891992e1e3b41e713796179f838ad649 /src/plugins/platforms/qnx | |
parent | 4585889467b6124f2e9ccca3d1c0da15e2bf790c (diff) |
xcb: fix freeze when (un)plugging input devices
.. in an application that has many native windows.
We don't need to select XI_HierarchyChangedMask and XI_DeviceChangedMask
for every window. It is enough to register one window for these events to
update state of our X11 client (application).
Furthermore, XIAllDevices and XIAllMasterDevices always apply, even if the
device has been added after the client has selected for events. So there is
no need to call XISelectEvents on XIAllDevices/XIAllMasterDevices again, if
we are not updating event masks.
With this patch and the test application from QTBUG-57013, removing/attaching
a device takes few hundred milliseconds instead of 23-24 seconds.
Task-number: QTBUG-57013
Change-Id: Ieb0b5ee25feef2922f901165825cb4a1289fc852
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/plugins/platforms/qnx')
0 files changed, 0 insertions, 0 deletions