xserver: Branch 'master'
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Feb 17 04:35:07 UTC 2021
dix/events.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
New commits:
commit af17b5c499ded807395c7ef02254d5af8ddc4667
Author: Povilas Kanapickas <povilas at radix.lt>
Date: Mon Feb 15 14:52:32 2021 +0200
dix: Use correct listener to deliver touch end events
This fixes an problem left in f682e0563f736ed2c2c612ed575e05b6e3db945e
due to an incorrect cherry-pick.
We must use old listener->listener to deliver the touch event. Otherwise
grab won't let the event through and the abovementioned commit has no
effect.
Signed-off-by: Povilas Kanapickas <povilas at radix.lt>
diff --git a/dix/events.c b/dix/events.c
index b05c95c43..20a40ecb2 100644
--- a/dix/events.c
+++ b/dix/events.c
@@ -1480,10 +1480,6 @@ UpdateTouchesForGrab(DeviceIntPtr mouse)
if (ti->active &&
CLIENT_BITS(listener->listener) == grab->resource) {
- listener->listener = grab->resource;
- listener->level = grab->grabtype;
- listener->window = grab->window;
-
if (grab->grabtype == CORE || grab->grabtype == XI ||
!xi2mask_isset(grab->xi2mask, mouse, XI_TouchBegin)) {
@@ -1501,6 +1497,9 @@ UpdateTouchesForGrab(DeviceIntPtr mouse)
listener->type = TOUCH_LISTENER_GRAB;
}
+ listener->listener = grab->resource;
+ listener->level = grab->grabtype;
+ listener->window = grab->window;
listener->state = TOUCH_LISTENER_IS_OWNER;
if (listener->grab)
More information about the xorg-commit
mailing list