summaryrefslogtreecommitdiff
path: root/dix/events.c
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2013-01-11 14:58:17 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2013-01-11 14:58:17 +1000
commitfa6ab7d9b2d7fd8184f1e068360607845f5c33ab (patch)
treee201e72201834d8337124c78f6272ccb81e63820 /dix/events.c
parentadde4e64480315dc5b47a727ee37d86f5cd8584f (diff)
parent0e1ab433f4048b3367bb2f01d16cd00502538e4d (diff)
Merge branch 'pointer-emulation-fixes-56558-v2' into for-keith
Diffstat (limited to 'dix/events.c')
-rw-r--r--dix/events.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/dix/events.c b/dix/events.c
index adbb76274..f72cdc7c4 100644
--- a/dix/events.c
+++ b/dix/events.c
@@ -1438,6 +1438,7 @@ UpdateTouchesForGrab(DeviceIntPtr mouse)
ti->listeners[0].type = LISTENER_POINTER_GRAB;
else
ti->listeners[0].type = LISTENER_GRAB;
+ ti->listeners[0].grab = grab;
}
}
}
@@ -1521,7 +1522,7 @@ DeactivatePointerGrab(DeviceIntPtr mouse)
emulate a ButtonRelease here. So pretend the listener
already has the end event */
if (grab->grabtype == CORE || grab->grabtype == XI ||
- !xi2mask_isset(dev->deviceGrab.grab->xi2mask, dev, XI_TouchBegin))
+ !xi2mask_isset(mouse->deviceGrab.grab->xi2mask, mouse, XI_TouchBegin))
ti->listeners[0].state = LISTENER_HAS_END;
TouchListenerAcceptReject(mouse, ti, 0, XIRejectTouch);
}
@@ -1550,15 +1551,6 @@ DeactivatePointerGrab(DeviceIntPtr mouse)
ReattachToOldMaster(mouse);
ComputeFreezes();
-
- /* If an explicit grab was deactivated, we must remove it from the head of
- * all the touches' listener lists. */
- for (i = 0; mouse->touch && i < mouse->touch->num_touches; i++) {
- TouchPointInfoPtr ti = mouse->touch->touches + i;
-
- if (ti->active && TouchResourceIsOwner(ti, grab_resource))
- TouchListenerAcceptReject(mouse, ti, 0, XIRejectTouch);
- }
}
/**