diff options
Diffstat (limited to 'xorg-server/Xi')
-rw-r--r-- | xorg-server/Xi/exevents.c | 6 | ||||
-rw-r--r-- | xorg-server/Xi/xipassivegrab.c | 13 |
2 files changed, 10 insertions, 9 deletions
diff --git a/xorg-server/Xi/exevents.c b/xorg-server/Xi/exevents.c index 3d4889361..f12ffa811 100644 --- a/xorg-server/Xi/exevents.c +++ b/xorg-server/Xi/exevents.c @@ -718,7 +718,6 @@ UpdateDeviceState(DeviceIntPtr device, DeviceEvent* event) { int i; int key = 0, - bit = 0, last_valuator; KeyClassPtr k = NULL; @@ -752,7 +751,6 @@ UpdateDeviceState(DeviceIntPtr device, DeviceEvent* event) b = device->button; key = event->detail.key; - bit = 1 << (key & 7); /* Update device axis */ /* Check valuators first */ @@ -890,8 +888,6 @@ ProcessOtherEvent(InternalEvent *ev, DeviceIntPtr device) Bool deactivateDeviceGrab = FALSE; int key = 0, rootX, rootY; ButtonClassPtr b; - KeyClassPtr k; - ValuatorClassPtr v; int ret = 0; int state, i; DeviceIntPtr mouse = NULL, kbd = NULL; @@ -955,9 +951,7 @@ ProcessOtherEvent(InternalEvent *ev, DeviceIntPtr device) if (ret == DONT_PROCESS) return; - v = device->valuator; b = device->button; - k = device->key; if (IsMaster(device) || IsFloating(device)) CheckMotion(event, device); diff --git a/xorg-server/Xi/xipassivegrab.c b/xorg-server/Xi/xipassivegrab.c index 6b4574854..6be27f3d1 100644 --- a/xorg-server/Xi/xipassivegrab.c +++ b/xorg-server/Xi/xipassivegrab.c @@ -256,9 +256,16 @@ ProcXIPassiveUngrabDevice(ClientPtr client) REQUEST(xXIPassiveUngrabDeviceReq); REQUEST_AT_LEAST_SIZE(xXIPassiveUngrabDeviceReq); - rc = dixLookupDevice(&dev, stuff->deviceid, client, DixGrabAccess); - if (rc != Success) - return rc; + if (stuff->deviceid == XIAllDevices) + dev = inputInfo.all_devices; + else if (stuff->deviceid == XIAllMasterDevices) + dev = inputInfo.all_master_devices; + else + { + rc = dixLookupDevice(&dev, stuff->deviceid, client, DixGrabAccess); + if (rc != Success) + return rc; + } if (stuff->grab_type != XIGrabtypeButton && stuff->grab_type != XIGrabtypeKeycode && |