debian/changelog | 7 ++ debian/patches/218_revert-release-all-buttons.diff | 71 +++++++++++++++++++++ debian/patches/series | 1 3 files changed, 79 insertions(+)
New commits: commit 827e0c33c9307404a7fd71f7ae0a89bb11ca6b9a Author: Timo Aaltonen <tjaal...@ubuntu.com> Date: Fri Apr 15 23:42:35 2011 +0300 Add 218_revert-release-all-buttons.diff from server-1.10-branch, which reverts the commit that broke XI2 SD button grabs. (LP: #757972) diff --git a/debian/changelog b/debian/changelog index 58af41b..01bbd42 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +xorg-server (2:1.10.0.902-1ubuntu2) UNRELEASED; urgency=low + + * Add 218_revert-release-all-buttons.diff from server-1.10-branch, which + reverts the commit that broke XI2 SD button grabs. (LP: #757972) + + -- Timo Aaltonen <tjaal...@ubuntu.com> Fri, 15 Apr 2011 23:37:34 +0300 + xorg-server (2:1.10.0.902-1ubuntu1) natty; urgency=low * Merge from Debian experimental. diff --git a/debian/patches/218_revert-release-all-buttons.diff b/debian/patches/218_revert-release-all-buttons.diff new file mode 100644 index 0000000..a43d658 --- /dev/null +++ b/debian/patches/218_revert-release-all-buttons.diff @@ -0,0 +1,71 @@ +commit 55f85d6cc28d737314f12958aac49d61b9476657 +Author: Jeremy Huddleston <jerem...@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; + diff --git a/debian/patches/series b/debian/patches/series index c866058..a486d63 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -32,6 +32,7 @@ 214_glx_dri_searchdirs.patch 215_glx_drawable_refcounting.diff 217_revert_bgnonevisitwindow.patch +218_revert-release-all-buttons.diff 500_xi2.1.patch 501_xf86CoordinatesToWindow.patch 502_gestures-extension.patch -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1qapro-0006y8...@alioth.debian.org