xkb: only post a XTest release if the XTest device has the button down
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
parent
c4fee9d2ec
commit
5daa442fe1
|
@ -732,9 +732,14 @@ ProcessPointerEvent(InternalEvent *ev, DeviceIntPtr mouse)
|
|||
if (rc != Success)
|
||||
ErrorF("[xkb] bad sourceid '%d' on button release event.\n",
|
||||
event->sourceid);
|
||||
else if (!IsXTestDevice(source, GetMaster(dev, MASTER_POINTER)))
|
||||
else if (!IsXTestDevice(source, GetMaster(dev, MASTER_POINTER))) {
|
||||
DeviceIntPtr xtest_device;
|
||||
|
||||
xtest_device = GetXTestDevice(GetMaster(dev, MASTER_POINTER));
|
||||
if (button_is_down(xtest_device, ev->device_event.detail.button, BUTTON_PROCESSED))
|
||||
XkbFakeDeviceButton(dev, FALSE, event->detail.key);
|
||||
}
|
||||
}
|
||||
|
||||
if (xkbi)
|
||||
xkbi->lockedPtrButtons &= ~(1 << (event->detail.key & 0x7));
|
||||
|
|
Loading…
Reference in New Issue