xserver: Branch 'server-1.10-branch'
Jeremy Huddleston
jeremyhu at kemper.freedesktop.org
Thu Apr 14 15:25:52 PDT 2011
dix/devices.c | 42 ------------------------------------------
1 file changed, 42 deletions(-)
New commits:
commit 55f85d6cc28d737314f12958aac49d61b9476657
Author: Jeremy Huddleston <jeremyhu at apple.com>
Date: Thu Apr 14 15:24:07 2011 -0700
Revert "dix: release all buttons and keys before reattaching a device (#34182)"
This patch introduced a regression, reverting for the 1.10.1 release. See
https://bugs.freedesktop.org/show_bug.cgi?id=36146
This reverts commit 81fbb96c54f78a7cd96433294ee003c7ef6a772a.
diff --git a/dix/devices.c b/dix/devices.c
index 84284e7..55f22cb 100644
--- a/dix/devices.c
+++ b/dix/devices.c
@@ -2380,46 +2380,6 @@ RecalculateMasterButtons(DeviceIntPtr slave)
}
/**
- * Generate release events for all keys/button currently down on this
- * device.
- */
-static void
-ReleaseButtonsAndKeys(DeviceIntPtr dev)
-{
- EventListPtr eventlist = InitEventList(GetMaximumEventsNum());
- ButtonClassPtr b = dev->button;
- KeyClassPtr k = dev->key;
- int i, j, nevents;
-
- if (!eventlist) /* no release events for you */
- return;
-
- /* Release all buttons */
- for (i = 0; b && i < b->numButtons; i++)
- {
- if (BitIsOn(b->down, i))
- {
- nevents = GetPointerEvents(eventlist, dev, ButtonRelease, i, 0, NULL);
- for (j = 0; j < nevents; j++)
- mieqProcessDeviceEvent(dev, (InternalEvent*)(eventlist+j)->event, NULL);
- }
- }
-
- /* Release all keys */
- for (i = 0; k && i < MAP_LENGTH; i++)
- {
- if (BitIsOn(k->down, i))
- {
- nevents = GetKeyboardEvents(eventlist, dev, KeyRelease, i);
- for (j = 0; j < nevents; j++)
- mieqProcessDeviceEvent(dev, (InternalEvent*)(eventlist+j)->event, NULL);
- }
- }
-
- FreeEventList(eventlist, GetMaximumEventsNum());
-}
-
-/**
* Attach device 'dev' to device 'master'.
* Client is set to the client that issued the request, or NULL if it comes
* from some internal automatic pairing.
@@ -2452,8 +2412,6 @@ AttachDevice(ClientPtr client, DeviceIntPtr dev, DeviceIntPtr master)
free(dev->spriteInfo->sprite);
}
- ReleaseButtonsAndKeys(dev);
-
oldmaster = dev->u.master;
dev->u.master = master;
More information about the xorg-commit
mailing list