dix: Each device needs to differ between a core grab and an XI grab,

otherwise a Xi grab may overwrite or release a core grab.
        Replace grab and associates with coreGrab and deviceGrab structures,
        adjust rest of dix/Xi/etc to compile.

xfree86: Don't check for core devices, we'll have the virtual ones anyway.
         If we check, the first mouse device is duplicated and sends
         double events.
This commit is contained in:
Peter Hutterer
2007-03-08 17:17:23 +10:30
parent 537bc2ead4
commit ceca5670fe
17 changed files with 325 additions and 232 deletions

View File

@@ -125,7 +125,7 @@ ProcXSetDeviceValuators(register ClientPtr client)
return Success;
}
if ((dev->grab) && !SameClient(dev->grab, client))
if ((dev->deviceGrab.grab) && !SameClient(dev->deviceGrab.grab, client))
rep.status = AlreadyGrabbed;
else
rep.status = SetDeviceValuators(client, dev, (int *)&stuff[1],