From 75feb1366809bfb6d50734c10ab11258783a2e9d Mon Sep 17 00:00:00 2001 From: Povilas Kanapickas Date: Sun, 30 May 2021 13:26:43 +0300 Subject: [PATCH] Xi: Include gestures among events that may freeze device --- Xi/exevents.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Xi/exevents.c b/Xi/exevents.c index f878dd212..9d4886212 100644 --- a/Xi/exevents.c +++ b/Xi/exevents.c @@ -1766,6 +1766,7 @@ ProcessGestureEvent(InternalEvent *ev, DeviceIntPtr dev) GestureInfoPtr gi; DeviceIntPtr kbd; Bool deactivateGestureGrab = FALSE; + Bool delivered = FALSE; if (!dev->gesture) return; @@ -1795,7 +1796,11 @@ ProcessGestureEvent(InternalEvent *ev, DeviceIntPtr dev) GrabIsGestureGrab(dev->deviceGrab.grab)) deactivateGestureGrab = TRUE; - DeliverGestureEventToOwner(dev, gi, ev); + delivered = DeliverGestureEventToOwner(dev, gi, ev); + + if (delivered && !deactivateGestureGrab && + (IsGestureBeginEvent(ev) || IsGestureEndEvent(ev))) + FreezeThisEventIfNeededForSyncGrab(dev, ev); if (IsGestureEndEvent(ev)) GestureEndGesture(gi);