summaryrefslogtreecommitdiff
path: root/xserver/dix/grabs.c
diff options
context:
space:
mode:
Diffstat (limited to 'xserver/dix/grabs.c')
-rw-r--r--xserver/dix/grabs.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/xserver/dix/grabs.c b/xserver/dix/grabs.c
index 55bf64f2c..d55a69cf0 100644
--- a/xserver/dix/grabs.c
+++ b/xserver/dix/grabs.c
@@ -219,7 +219,10 @@ CreateGrab(int client, DeviceIntPtr device, DeviceIntPtr modDevice,
grab->resource = FakeClientID(client);
grab->device = device;
grab->window = window;
- grab->eventMask = mask->core; /* same for XI */
+ if (grabtype == CORE || grabtype == XI)
+ grab->eventMask = mask->core; /* same for XI */
+ else
+ grab->eventMask = 0;
grab->deviceMask = 0;
grab->ownerEvents = param->ownerEvents;
grab->keyboardMode = param->this_device_mode;