ChangeLog | 621 +++++++++++++++++++++ Xext/saver.c | 8 Xi/exevents.c | 155 ++--- Xi/ungrdevb.c | 2 Xi/ungrdevk.c | 2 Xi/xipassivegrab.c | 2 configure.ac | 6 debian/changelog | 52 + debian/control | 11 debian/patches/10_Include-missing-selection-h.diff | 20 debian/patches/series | 1 debian/rules | 6 dix/cursor.c | 29 dix/devices.c | 4 dix/dispatch.c | 3 dix/events.c | 101 +-- dix/grabs.c | 21 dix/main.c | 3 dix/pixmap.c | 2 dix/touch.c | 114 +++ dix/window.c | 15 fb/fbpixmap.c | 1 glx/glxdri.c | 2 hw/xfree86/common/xf86platformBus.c | 8 hw/xfree86/modes/xf86Crtc.c | 34 - hw/xfree86/modes/xf86Cursors.c | 4 hw/xfree86/ramdac/xf86Cursor.c | 28 include/cursor.h | 4 include/dixgrabs.h | 2 include/eventstr.h | 1 include/input.h | 2 include/inputstr.h | 2 render/animcur.c | 3 xfixes/cursor.c | 6 34 files changed, 1057 insertions(+), 218 deletions(-)
New commits: commit 7b684f9fe7edafda652bf7c003332d5f66dd728b Author: Julien Cristau <jcris...@debian.org> Date: Sat Jul 27 13:18:50 2013 +0200 Upload to experimental diff --git a/debian/changelog b/debian/changelog index c264855..63f9c84 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -xorg-server (2:1.14.2.901-1) UNRELEASED; urgency=low +xorg-server (2:1.14.2.901-1) experimental; urgency=low * New upstream release @@ -29,7 +29,7 @@ xorg-server (2:1.14.2.901-1) UNRELEASED; urgency=low d/rules. * Make build-deps match xserver-xorg-dev dependencies and configure checks. - -- Julien Cristau <jcris...@debian.org> Fri, 26 Jul 2013 14:05:51 +0200 + -- Julien Cristau <jcris...@debian.org> Sat, 27 Jul 2013 13:18:28 +0200 xorg-server (2:1.12.4-6.1) unstable; urgency=low commit d227ac876d909f0ace65ff6a39f93fec05e5135d Author: Julien Cristau <jcris...@debian.org> Date: Sat Jul 27 13:17:59 2013 +0200 Make build-deps match xserver-xorg-dev dependencies and configure checks. diff --git a/debian/changelog b/debian/changelog index eef11b2..c264855 100644 --- a/debian/changelog +++ b/debian/changelog @@ -27,6 +27,7 @@ xorg-server (2:1.14.2.901-1) UNRELEASED; urgency=low * Merge sid branch up to 2:1.12.4-6.1. * Drop old --disable-builddocs, --disable-xcalibrate configure options from d/rules. + * Make build-deps match xserver-xorg-dev dependencies and configure checks. -- Julien Cristau <jcris...@debian.org> Fri, 26 Jul 2013 14:05:51 +0200 diff --git a/debian/control b/debian/control index ee4b6ef..90aaa86 100644 --- a/debian/control +++ b/debian/control @@ -29,7 +29,7 @@ Build-Depends: x11proto-randr-dev (>= 1.4.0), x11proto-record-dev (>= 1.13.99.1), x11proto-render-dev (>= 2:0.11), - x11proto-resource-dev, + x11proto-resource-dev (>= 1.2.0), x11proto-scrnsaver-dev, x11proto-video-dev, x11proto-xcmisc-dev (>= 1.2.0), @@ -162,22 +162,21 @@ Architecture: any Depends: libpixman-1-dev (>= 0.27.2), x11proto-core-dev (>= 7.0.22), - x11proto-input-dev (>= 2.2.99.1), + x11proto-input-dev (>= 2.3), x11proto-xext-dev (>= 7.1.99), x11proto-video-dev, x11proto-randr-dev (>= 1.4.0), x11proto-render-dev (>= 2:0.11), x11proto-dri2-dev (>= 2.8), - x11proto-gl-dev, + x11proto-gl-dev (>= 1.4.16), x11proto-fonts-dev, x11proto-xinerama-dev, x11proto-kb-dev, x11proto-xf86dri-dev, - x11proto-resource-dev, + x11proto-resource-dev (>= 1.2.0), x11proto-scrnsaver-dev, libxkbfile-dev, libpciaccess-dev, - libpixman-1-dev (>= 0.21.8), mesa-common-dev, ${misc:Depends}, Description: Xorg X server - development files commit 28b1774c24d03c2a28ac9ae4870b39418bc14a36 Author: Julien Cristau <jcris...@debian.org> Date: Sat Jul 27 13:17:10 2013 +0200 Drop old unrecognized configure options from d/rules. diff --git a/debian/changelog b/debian/changelog index 245abbd..eef11b2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -25,6 +25,8 @@ xorg-server (2:1.14.2.901-1) UNRELEASED; urgency=low [ Julien Cristau ] * Merge sid branch up to 2:1.12.4-6.1. + * Drop old --disable-builddocs, --disable-xcalibrate configure options from + d/rules. -- Julien Cristau <jcris...@debian.org> Fri, 26 Jul 2013 14:05:51 +0200 diff --git a/debian/rules b/debian/rules index 5fc0a3c..993372e 100755 --- a/debian/rules +++ b/debian/rules @@ -112,12 +112,10 @@ confflags += \ --with-builderstring="$(SOURCE_NAME) $(SOURCE_VERSION) ($(BUILDER))" \ --with-xkb-path=/usr/share/X11/xkb \ --with-xkb-output=/var/lib/xkb \ - --disable-builddocs \ --disable-install-libxf86config \ --enable-mitshm \ --enable-xres \ --disable-xcsecurity \ - --disable-xcalibrate \ --disable-tslib \ --enable-dbe \ --disable-xf86bigfont \ commit 632ab7067a375c418f8f86928c974b877f234dd9 Author: Julien Cristau <jcris...@debian.org> Date: Fri Jul 26 14:06:36 2013 +0200 Bump changelogs diff --git a/ChangeLog b/ChangeLog index 3ce76d4..800af89 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,624 @@ +commit bc41226f7741098e55a3b0df924986991576d50a +Merge: 4ebd618 2cd62dc +Author: Matt Dew <mar...@osource.org> +Date: Thu Jul 25 22:56:24 2013 -0600 + + Merge branch 'server-1.14-touch-fixes' of git://people.freedesktop.org/~whot/xserver into server-1.14-branch + +commit 4ebd618bc5ef71507e708e7191091828eca3a7e8 +Author: Matt Dew <mar...@osource.org> +Date: Thu Jul 25 22:24:00 2013 -0600 + + Bah, bad rev number. Fixed: changed 1.14.3-rc1 to 1.14.2.901 + +commit fef66ffe7a7e899a9126a1e431b94d881163b00d +Author: Matt Dew <mar...@osource.org> +Date: Thu Jul 25 22:02:26 2013 -0600 + + bump rev from 1.14.2 to 1.14.3-rc1 + +commit 2cd62dc02b67c70d2417b2ccd307ead9596a2967 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri Mar 1 08:43:58 2013 +1000 + + Xi: return !Success from DeliverTouchEmulatedEvent if we didn't deliver + + All callers currently ignore the new value, so this patch has no effect. + Inverse call graph: + + DeliverTouchEmulatedEvent + DeliverEmulatedMotionEvent Ignores value + DeliverTouchBeginEvent + DeliverTouchEvent + DeliverTouchEvents Ignores value + DeliverTouchEndEvent + DeliverTouchEvent + DeliverTouchEvents Ignores value + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + Reviewed-by: Keith Packard <kei...@keithp.com> + (cherry picked from commit 9978b57b8d94f061d72a67b99a02b0ba16a11429) + +commit c203568905bcbb65fb1e079b626d2c1e90ecb72d +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Mon May 13 15:22:12 2013 +1000 + + Xi: fix warning - remove unused 'rc' + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit fd5ea0237db6d725a48f76b706135df9d3246b82) + +commit 93f063c40dc4b339ae9114551071c57b52d98dba +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri Jul 12 14:10:10 2013 +1000 + + dix: UpdateTouchesForGrab must only free the listener grab if it is non-NULL + + If a client calls XIGrabDevice in response to a ButtonPress event (regular + event selection), the device will have a grab, but listener->grab is NULL. + + Check for that, to avoid logspam. + + [ 26293.863] (EE) BUG: triggered 'if (!pGrab)' + [ 26293.863] (EE) BUG: grabs.c:256 in FreeGrab() + [ 26293.863] (EE) + [ 26293.863] (EE) Backtrace: + [ 26293.864] (EE) 0: /usr/bin/Xorg (FreeGrab+0x54) [0x45d3fc] + [ 26293.864] (EE) 1: /usr/bin/Xorg (UpdateTouchesForGrab+0x135) [0x447d4e] + [ 26293.864] (EE) 2: /usr/bin/Xorg (ActivatePointerGrab+0x1ba) [0x447f3d] + [ 26293.864] (EE) 3: /usr/bin/Xorg (GrabDevice+0x3e6) [0x4503bc] + [ 26293.864] (EE) 4: /usr/bin/Xorg (ProcXIGrabDevice+0x1f9) [0x5981b1] + [ 26293.865] (EE) 5: /usr/bin/Xorg (ProcIDispatch+0x78) [0x58aa17] + [ 26293.865] (EE) 6: /usr/bin/Xorg (Dispatch+0x30d) [0x43347e] + [ 26293.865] (EE) 7: /usr/bin/Xorg (main+0x61d) [0x498175] + [ 26293.865] (EE) 8: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x3df5621b75] + [ 26293.865] (EE) 9: /usr/bin/Xorg (_start+0x29) [0x423a19] + [ 26293.866] (EE) 10: ? (?+0x29) [0x29] + [ 26293.866] (EE) + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + Reviewed-by: Keith Packard <kei...@keithp.com> + (cherry picked from commit 0e3be0b25fcfeff386bad132526352c2e45f1932) + +commit ecd178e632a99ae2f12d2d9b6e9a48eaa421335d +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Jul 9 13:27:19 2013 +1000 + + dix: when ungrabbing an active grab, accept pointer grabs (#66720) + + Ungrabbing a device during an active touch grab rejects the grab. Ungrabbing + a device during an active pointer grab accepts the grab. + + Rejection is not really an option for a pointer-emulated grab, if a client + has a button mask on the window it would get a ButtonPress emulated after + UngrabDevice. That is against the core grab behaviour. + + X.Org Bug 66720 <http://bugs.freedesktop.org/show_bug.cgi?id=66720> + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + Reviewed-by: Jasper St. Pierre <jstpie...@mecheye.net> + (cherry picked from commit 8eeaa74bc241acb41f1d3ed64971e0b01e794776) + +commit 54a7ae04a8475df6ce87e52ff995de22fafc7c92 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Mon May 27 13:46:49 2013 +1000 + + dix: remove logspam in RefCursor() + + This shouldn't have been in the patch + + Reported-by: Colin Harrison <colin.harri...@virgin.net> + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + Reviewed-by: Keith Packard <kei...@keithp.com> + Signed-off-by: Keith Packard <kei...@keithp.com> + (cherry picked from commit c21344add2fc589df83b29be5831c36a372201bd) + +commit 1e29b269fd712ae1e3552eeddd3529015baee7ae +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed May 15 19:01:11 2013 +1000 + + Abstract cursor refcounting + + Too many callers relied on the refcnt being handled correctly. Use a simple + wrapper to handle that case. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 9a5ad65330693b3273972b63d10f2907d9ab954a) + +commit c0be1168fd3dd2eb01187789ddc30d7aab909a98 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue May 14 14:51:31 2013 +1000 + + dix: call UpdateDeviceState() for emulated TouchEndEvents + + ProcessTouchEvents() calls UDS for all touch events, but if the event type + was switched to TouchUpdate(pending end) UDS is a noop. + + Daniel Drake found this can cause stuck buttons if a touch grab is + activated, rejected and the touch event is passed to a regular listener. + This sequence causes the TouchEnd to be changed to TouchUpdate(pending end). + + The actual TouchEnd event is later generated by the server once it is passed + to the next listener. UDS is never called for this event, thus the button + remains logically down. + + A previous patch suggested for UDS to handle TouchUpdate events [1], however + this would release the button when the first TouchEvent is processed, not + when the last grab has been released (as is the case for sync pointer + grabs). A client may thus have the grab on the device, receive a ButtonPress + but see the button logically up in an XQueryPointer request. + + This patch adds a call to UDS to TouchEmitTouchEnd(). The device state must + be updated once a TouchEnd event was sent to the last grabbing listener and + the number of grabs on the touchpoint is 0. + + [1] http://patchwork.freedesktop.org/patch/13464/ + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 35c2e263db01b2b61354298e5e85aa3cae8ac317) + +commit 5c32bd0e2c104deaa2820c62289916fff6a4e3cd +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri May 3 15:07:58 2013 +1000 + + dix: fix cursor refcounting + + The cursor is referenced during CopyGrab(), thus doesn't need to be handled + manually anymore. It does need to be refcounted for temp grabs though. + + The oldGrab handling in ProcGrabPointer is a leftover from the cursor in the + grab being refcounted, but the grab itself being a static struct in the + DeviceIntRec. Now that all grabs are copied, this lead to a double-free of + the cursor (Reproduced in Thunderbird, dragging an email twice (or more + often) causes a crash). + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 481702101b86fff003430e952dc65fb41eb56400) + +commit 0ee9704f3c70fa7cf77edef55d158ad78df72a25 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri May 3 15:02:05 2013 +1000 + + dix: free the old grab when activating a new grab + + A client may call XIGrabDevice twice, overwriting the existing grab. Thus, + make sure we free the old copy after we copied it. Free it last, to make + sure our refcounts don't run to 0 and inadvertantly free something on the + way. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 3093f78d17e48a506aab170a9089cd10e21af299) + +commit ef0fff102d1feb5bccffc918da5c0dc7c0d28f3b +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Apr 24 14:46:06 2013 +1000 + + Xi: check for HAS_ACCEPTED only for grab listeners + + If we have one listener left but it's not a grab, it cannot be in + LISTENER_HAS_ACCEPTED state. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 2566bdd8bc996cccde77b846819808c6239a89d2) + +commit f3d63710d57aea0184ae07f0422a76b0fd6d415f +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Apr 24 14:40:31 2013 +1000 + + Move TouchListenerGone call to CloseDownClient + + TouchListenerGone cleans up if a client disappears. Having this in + FreeGrab() triggers cyclic removal of grabs, emitting wrong events. In + particular, it would clean up a passive grab record while that grab is + active. + + Move it to CloseDownClient() instead, cleaning up before we go. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 5b00fc52270e9cfdfe7ac1838a21defe50fc3d31) + +commit 6c880c143f6a32d3bbc529e4a0ab1663ddecf0a0 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Apr 24 12:53:52 2013 +1000 + + dix: remove all listeners when freeing a touch + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 34c9b39d9937c2e19c2dffc9748605f90d40f965) + +commit ab76a3a3fc56cf8f530e5ab9b6389b09da1cdc12 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Apr 17 20:15:35 2013 +1000 + + dix: always copy grabs, don't reference them + + Introduced in xorg-server-1.13.99.901-2-g9ad0fdb. Storing the grab pointer + in the listener turns out to be a bad idea. If the grab is not an active + grab or an implicit grab, the pointer stored is the one to the grab attached + on the window. This grab may be removed if the client calls UngrabButton or + similar while the touch is still active, leaving a dangling pointer. + + To avoid this, copy the grab wherever we need to reference it later. This + is also what we do for pointer/keyboard grabs, where we copy the grab as + soon as it becomes active. + + Reported-by: Maarten Lankhorst <maarten.lankho...@canonical.com> + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 395124bd2782823de37e5c5b2f15dba49cff05f6) + +commit 6bd9badc780ec9d1fb147dfa0c671979c75b722c +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Apr 23 15:52:18 2013 +1000 + + dix: AllocGrab can copy if an argument is passed in + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 925e35122ebad877395bcf13676e9dbeb254bdfa) + +commit 479f8bf236d17e2a2093d349d2ef6471ff089a53 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Apr 23 15:46:04 2013 +1000 + + dix: freeing a null grab is a bug, complain if doing so + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 4980bcef9973ba1f90f53028f061669ee5d2661b) + +commit 27752301377698124634d48b62ba7fcf8310caab +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Apr 23 15:39:32 2013 +1000 + + dix: use a temporary variable for listeners[0] + + no functional changes + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit ccfa0f2d5de557546815a5e4f59552e2af46b578) + +commit d8c0cc9bab1fe159f58c2b5e8056c2d94a623789 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Thu Apr 18 10:32:11 2013 +1000 + + dix: drop DeviceIntRec's activeGrab struct + + Obsolete since 4bc2761ad5ec2d0668aec639780ffb136605fbc8. This struct + existed so copying a passive grab could be simply done by + activeGrab = *grab + + and thus have a copy of the GrabPtr we'd get from various sources but still + be able to check device->grab for NULL. + + Since 4bc2761 activeGrab is a pointer itself and points to the same memory + as grabinfo->grab, leaving us with the potential of dangling pointers if + either calls FreeGrab() and doesn't reset the other one. + + There is no reader of activeGrab anyway, so simply removing it is + sufficient. + + Note: field is merely renamed to keep the ABI. Should be removed in the + future. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 5363433a5cc64e2f83859aa1c32a89e5e1ddf9e4) + +commit 25b641bb324c33226313c15448592b785043eaba +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Apr 17 20:14:56 2013 +1000 + + dix: use a tmp variable for the to-be-removed touch listener + + No functional changes. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 7dbf61817d3bd4b1fc71710677e56c5d8cfcdb4e) + +commit 88273287e1d7b3c06313f77d450f87a31bf53780 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Apr 17 20:13:34 2013 +1000 + + dix: invert a loop condition + + Change the single if condition in the loop body to a + if (!foo) continue; + and re-indent the rest. + + No functional changes. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit a71a283934406d870bcd8dc376eb1c9ce1c8bbb4) + +commit 4081b00d36d074eedf5c8d04196998d23cff28cf +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Thu Feb 28 11:02:40 2013 +1000 + + dix: XAllowEvents() on a touch event means accepting it + + A sync grab is the owner once it gets events. If it doesn't replay the + event it will get all events from this touch, equivalent to accepting it. + + If the touch has ended before XAllowEvents() is called, we also now need to + send the TouchEnd event and clean-up since we won't see anything more from + this touch. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 5174b1f98204beee79eba74c4cda5f2be0a60a8f) + +commit 8666395484d0ff68526b1afd0044329ca3e9c907 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri Mar 1 12:52:35 2013 +1000 + + dix: move EmitTouchEnd to touch.c + + No functional changes, this just enables it to be re-used easier. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit e7f79c48b0faea910dc881034c00eb807fcd6210) + +commit 4dac09796ca7ec19c1a9b17f338babd51c999e2e +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri Mar 1 10:41:01 2013 +1000 + + Xi: Don't emit a TouchEnd event to a frozen device + + EmitTouchEnd calls DeliverTouchEvents directly instead of through + public.processInputProc. If a device is frozen, the TouchEnd is + processed while the device is waiting for a XAllowEvents and thus ends the + touch point (and the grab) before the client decided what to do with it. In + the case of ReplayPointer, this loses the event. + + This is a hack, but making EmitTouchEnd use processInputProc breaks + approximately everything, especially the touch point is cleaned up during + ProcessTouchEvents. Working around that is a bigger hack than this. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 0eb9390f6048049136347d5a5834d88bfc67cc09) + +commit c8a48358065ff94b8307d8aedfe58e54f34ba84f +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Thu Feb 28 13:07:26 2013 +1000 + + Xi: use public.processInputProc to replay the touch history + + If a device is frozen in results to a grab, we need to enqueue the events. + + This makes things complicated, and hard to follow since touch events are now + replayed in the history, pushed into EnqueueEvent, then replayed later + during PlayReleasedEvents in response to an XAllowEvents. + + While the device is frozen, no touch events are processed, so if there is a + touch client with ownership mask _below_ the grab this will delay the + delivery and potentially screw gesture recognition. However, this is the + behaviour we have already anyway if the top-most client is a sync pgrab or + there is a sync grab active on the device when the TouchBegin was generated. + + (also note, such a client would only reliably work in case of ReplayPointer + anyway) + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit a7d989d335f903ffd8b168cd2beeb82c78d30c21) + +commit 2fcf86036f95128e9b90ddbd5ffc6edbacd3de9f +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Feb 27 15:05:54 2013 +1000 + + Xi: when punting to a new owner, always create TouchEnd events + + If a touch is pending_finish and we just punted it to the next owner, that + client must receive a TouchEnd event. + + If we just punted to the last owner and that owner not a touch grab, we need + to end the touch since this is the last event to be sent, and the client + cannot accept/reject this. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 214d11d3fcdac51fc7afbf3770516ec14f9e13c1) + +commit e1c908f3931aa82c7c5f14aa162e02f3abf98faf +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri Mar 1 09:15:37 2013 +1000 + + Xi: save state for early acceptance + + Delivering an event changes the state to LISTENER_IS_OWNER and we thus lose + the information of early acceptance. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 026627fe19aad007544eccf209f0dea05e67a7a7) + +commit 7343d05e3a502216532aa9901c3a8948ea118c78 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Thu Feb 28 15:28:46 2013 +1000 + + Xi: if a passive async grab is activated from an emulated touch, accept + + Async grabs cannot replay events, they cannot reject, so we can do an early + accept here. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit d905348134c80f19793eefb761731b00559ddf3a) + +commit 18346911ab0ce1ad66986b83f9afefadec25555e +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Thu Feb 28 13:04:36 2013 +1000 + + Xi: fix lookup in ActivateEarlyAccept + + ActivateEarlyAccept() can only be called from a grabbing client, so we can + ignore the rest. And it's easy enough to get the client from that since + 9ad0fdb135a1c336771aee1f6eab75a6ad874aff. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 8b0d21044956f3810199d5e2f38ce33069e97be7) + +commit 000d469dd4d97424c72d82e4383ec295e31ffd34 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Thu Feb 28 13:08:27 2013 +1000 + + Xi: update the core listener state if we delivered the touch event + + If a TouchBegin is sent to a core client, that client is now the owner. + + By the time the TouchEnd is being processed, the client cannot replay + anymore, so we can assume that this is the final touch end and we can clean + up the touch record. + + Note: DeliverTouchEmulatedEvent is called for all listeners and immediately + bails out if the client is not the owner and thus shouldn't yet get the + event. Thus, check the return code. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit d08bae297f9d7651edb1923d6b0d6b14b3d674fc) + +commit a7ec834d5e8c351cfa5d87b7902fa061826e3097 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Mon Feb 25 11:21:07 2013 +1000 + + Xi: if we delivered a TouchEnd to a passive grab, end it + + ef64b5ee97099618cf2e2cbbd3e471095695ae24 (which introduced the + TOUCH_CLIENT_ID check) has a wrong assumption that generated touch events + (TOUCH_CLIENT_ID) should not terminate passive grabs. + This is untrue, a TouchEnd may be generated in response to a TouchReject + higher up. If we _deliver_ an event to a client, terminate the passive grab. + + This requires us to count the actually delivered events too (first hunk). + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 81554d274f04951c55ea7f2e38d0455e2025e08d) + +commit 636647bc7f9ed10918cbb228f7d448c8cf733667 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Feb 13 11:26:11 2013 +1000 + + dix: don't prepend an activated passive grab to the listeners + + If the device is currently grabbed as the result of a passive grab + activating, do not prepend that grab to the listeners (unlike active grabs). + Otherwise, a client with a passive pointer grab will prevent touch grabs + from activating higher up in the window stack. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 363b6387da6e669099a2da3861c73a29808295a6) + +commit 87e027726f2d9223ce2fef2e4d26c18ae680a05e +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Feb 13 10:49:23 2013 +1000 + + Xi: not having an ownership mask does not mean automatic acceptance + + If we only have a single touch-grabbing client, setting the client as owner + would clean up the touch once the TouchEnd was processed. If the client then + calls XIAllowTouches() it will receive a BadValue for the touch ID (since + the internal record is already cleaned up). + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + (cherry picked from commit 9cc45c18ad1511adf3fb163dd4cefbef106edb23) + +commit 34f5ca3a70e966d6fe232179a47c3dc660773ad5 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri Mar 1 08:26:06 2013 +1000 + + Xi: use a temp variable for the new listener + + Instead of accessing ti->listener[0] all the time. + + No functional changes. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + Reviewed-by: Keith Packard <kei...@keithp.com> + (cherry picked from commit fc504a44d12d537d4e07f659f1863f200a0272ad) + +commit 54b125d1751385bcfc3c1b51d21ee6a7dc14143b +Author: Aaron Plattner <aplatt...@nvidia.com> +Date: Tue Apr 30 14:30:18 2013 -0700 + + xfree86: don't enable anything in xf86InitialConfiguration for GPU screens + + There's no point in turning on outputs connected to GPU screens during initial + configuration. Not only does this cause them to just display black, it also + confuses clients when these screens are attached to a master screen and RandR + reports that the outputs are already on. + + Also, don't print the warning about no outputs being found on GPU screens, + since that's expected. + + Signed-off-by: Aaron Plattner <aplatt...@nvidia.com> + Reviewed-by: Dave Airlie <airl...@gmail.com> + (cherry picked from commit dbfeaf70623a83e1a3f3255c94d52e0e04702837) + +commit 29545a422bbdd11fda5cb61f27720332d68d0c36 +Author: Dave Airlie <airl...@redhat.com> +Date: Wed Jan 9 12:52:13 2013 +1000 + + gpu: call CreateScreenResources for GPU screens + + I didn't think we needed this before, but after doing some more + work with reverse optimus it seems like it should be called. + + Reviewed-by: Keith Packard <kei...@keithp.com> + Signed-off-by: Dave Airlie <airl...@redhat.com> + (cherry picked from commit f2fd8ec3725a61abbc831f0a9ec28fa2b7020c47) + +commit f21cc327a56e3b453cf0dba04457223d61c27ea6 +Author: Dave Airlie <airl...@redhat.com> +Date: Wed Jan 9 12:52:08 2013 +1000 + + dix: allow pixmap dirty helper to be used for non-shared pixmaps + + this allows the pixmap dirty helper to be used for reverse optimus, + where the GPU wants to copy from the shared pixmap to its VRAM copy. + + [airlied: slave_dst is wrong name now but pointless ABI churn at this point] + Reviewed-by: Keith Packard <kei...@keithp.com> + Signed-off-by: Dave Airlie <airl...@redhat.com> + (cherry picked from commit 8fcb9d91b69abc72ddef31b9f2e8585580c6cad2) + +commit d817284b01ad3bbe02c71d6b00af7526be77626b +Author: Dave Airlie <airl...@redhat.com> +Date: Wed Jan 9 12:52:03 2013 +1000 + + xf86crtc: don't use scrn->display for gpu screens + + scrn->display is a property of the main screen really, and we don't + want to have the GPU screens use it for anything when picking modes + or a front buffer size. + + This fixes a bug where when you plugged a display link device, it + would try and allocate a screen the same size as the current running + one (3360x1050 in this case), which was too big for the device. Avoid + doing this and just pick sizes based on whats plugged into this device. + + Reviewed-by: Keith Packard <kei...@keithp.com> + Signed-off-by: Dave Airlie <airl...@redhat.com> + (cherry picked from commit 16077b81c502e04d77f81f683e0c213b9fe75393) + +commit 803d0ac49900903915f1dcd2496f085e5c1afa22 +Author: Dave Airlie <airl...@redhat.com> +Date: Wed Jan 9 12:51:55 2013 +1000 + + dix/gpu: remove asserts for output/offload from same slave + + We should have no problem allowing output/offload from the same slave, + I asserted here, but in order to implement reverse optimus this makes + perfect sense. (reverse optimus is intel outputting to nvidia). + + Reviewed-by: Keith Packard <kei...@keithp.com> + Signed-off-by: Dave Airlie <airl...@redhat.com> + (cherry picked from commit f0d0d75bfe62553dde353f89e46ff13dd863fbe8) + +commit 3608d9f3dd6ae1d23e23294e9a56cb8158e65d19 +Author: Piotr Dziwinski <piot...@gmail.com> +Date: Sat Feb 23 13:14:45 2013 +0100 + + glx: fix uninitialized var in __glXDRIscreenProbe + + Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=59825 + + Signed-off-by: Piotr Dziwinski <piot...@gmail.com> + Reviewed-by: Keith Packard <kei...@keithp.com> + Signed-off-by: Keith Packard <kei...@keithp.com> + (cherry picked from commit cc3d1a5a6120e721a46c67446ba68f5596055633) + commit 2767d9a17d62aede7cabac589c3388078bdb6022 Author: Matt Dew <mar...@osource.org> Date: Tue Jun 25 09:49:08 2013 -0600 diff --git a/debian/changelog b/debian/changelog index f518cf7..566632d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,7 +1,8 @@ -xorg-server (2:1.14.2-1) UNRELEASED; urgency=low +xorg-server (2:1.14.2.901-1) UNRELEASED; urgency=low - [ Maarten Lankhorst ] * New upstream release + + [ Maarten Lankhorst ] * Bump minimum required abi, randr, dri2 and gl protos. * Remove upstreamed patches. - 02_Add-libnettle-as-option-for-sha1.diff @@ -22,7 +23,7 @@ xorg-server (2:1.14.2-1) UNRELEASED; urgency=low * Bump input ABI version in serverminver * Bump libxi-dev build requirement to 2:1.6.99.1 - -- Robert Hooker <sarv...@ubuntu.com> Wed, 22 Aug 2012 11:12:17 -0400 + -- Julien Cristau <jcris...@debian.org> Fri, 26 Jul 2013 14:05:51 +0200 xorg-server (2:1.12.4-4) UNRELEASED; urgency=low commit 4ebd618bc5ef71507e708e7191091828eca3a7e8 Author: Matt Dew <mar...@osource.org> Date: Thu Jul 25 22:24:00 2013 -0600 Bah, bad rev number. Fixed: changed 1.14.3-rc1 to 1.14.2.901 diff --git a/configure.ac b/configure.ac index 8738813..271e49d 100644 --- a/configure.ac +++ b/configure.ac @@ -26,7 +26,7 @@ dnl dnl Process this file with autoconf to create configure. AC_PREREQ(2.60) -AC_INIT([xorg-server], 1.14.3-rc1, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) +AC_INIT([xorg-server], 1.14.2.901, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) RELEASE_DATE="2013-07-25" RELEASE_NAME="Act semi-normal-rc1" AC_CONFIG_SRCDIR([Makefile.am]) commit fef66ffe7a7e899a9126a1e431b94d881163b00d Author: Matt Dew <mar...@osource.org> Date: Thu Jul 25 22:02:26 2013 -0600 bump rev from 1.14.2 to 1.14.3-rc1 diff --git a/configure.ac b/configure.ac index 99e3cd6..8738813 100644 --- a/configure.ac +++ b/configure.ac @@ -26,9 +26,9 @@ dnl dnl Process this file with autoconf to create configure. AC_PREREQ(2.60) -AC_INIT([xorg-server], 1.14.2, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) -RELEASE_DATE="2013-06-25" -RELEASE_NAME="Act Abnormal" +AC_INIT([xorg-server], 1.14.3-rc1, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) +RELEASE_DATE="2013-07-25" +RELEASE_NAME="Act semi-normal-rc1" AC_CONFIG_SRCDIR([Makefile.am]) AM_INIT_AUTOMAKE([foreign dist-bzip2]) commit 8c623bd496fa4b697252229614bc03cfde0d8515 Author: Michael Biebl <bi...@debian.org> Date: Thu Jul 25 19:45:59 2013 +0200 Update changelong and upload to unstable Signed-off-by: Julien Cristau <jcris...@debian.org> diff --git a/debian/changelog b/debian/changelog index a2ef947..faf29dc 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,12 @@ +xorg-server (2:1.12.4-6.1) unstable; urgency=low + + * Non-maintainer upload. + * 10_Include-missing-selection-h.diff: Fix FTBFS with GCC 4.8. Include + selection.h in dix/window.c for the missing DeleteWindowFromAnySelections + function prototype. Patch by Gerardo Malazdrewicz (closes: #701372) + + -- Michael Biebl <bi...@debian.org> Thu, 25 Jul 2013 19:45:29 +0200 + xorg-server (2:1.12.4-6) unstable; urgency=low * Touch: Fix duplicate TouchBegin selection with virtual devices commit ca4169aa5e47411a275fedbd78963408beb31d6a Author: Michael Biebl <bi...@debian.org> Date: Thu Jul 25 19:44:21 2013 +0200 Fix build failure with GCC 4.8 This patches fixes the following build failure: ../../dix/window.c:887:5: error: implicit declaration of function 'DeleteWindowFromAnySelections' [-Werror=implicit-function-declaration] by including "selection.h", where the function is prototyped. Signed-off-by: Julien Cristau <jcris...@debian.org> diff --git a/debian/patches/10_Include-missing-selection-h.diff b/debian/patches/10_Include-missing-selection-h.diff new file mode 100644 index 0000000..873b14e --- /dev/null +++ b/debian/patches/10_Include-missing-selection-h.diff @@ -0,0 +1,20 @@ +Description: Fix build failure with GCC 4.8 + This patches fixes the following build failure: + + ../../dix/window.c:887:5: error: implicit declaration of function 'DeleteWindowFromAnySelections' [-Werror=implicit-function-declaration] + + by including "selection.h", where the function is prototyped. + +Author: Gerardo Malazdrewicz <gera...@malazdrewicz.com.ar> +Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=701372 +--- xorg-server-1.12.4/dix/window.c 2012-05-17 14:09:02.000000000 -0300 ++++ xorg-server-1.12.4.good/dix/window.c 2013-04-18 11:53:06.787521781 -0300 +@@ -131,6 +131,8 @@ + #include "xace.h" + #include "exevents.h" + ++#include "selection.h" ++ + #include <X11/Xatom.h> /* must come after server includes */ + + /****** diff --git a/debian/patches/series b/debian/patches/series index c89edaf..e05122f 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -10,3 +10,4 @@ 07_Revert-kinput-allocate-enough-space-for-null-charact.diff 08_xfree86_fix_ia64_inx_outx.diff 09_EXA-Track-source-mask-pixmaps-more-explicitly-for-Co.diff +10_Include-missing-selection-h.diff commit 2cd62dc02b67c70d2417b2ccd307ead9596a2967 Author: Peter Hutterer <peter.hutte...@who-t.net> Date: Fri Mar 1 08:43:58 2013 +1000 Xi: return !Success from DeliverTouchEmulatedEvent if we didn't deliver All callers currently ignore the new value, so this patch has no effect. Inverse call graph: DeliverTouchEmulatedEvent DeliverEmulatedMotionEvent Ignores value DeliverTouchBeginEvent DeliverTouchEvent DeliverTouchEvents Ignores value DeliverTouchEndEvent DeliverTouchEvent DeliverTouchEvents Ignores value Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> Reviewed-by: Keith Packard <kei...@keithp.com> (cherry picked from commit 9978b57b8d94f061d72a67b99a02b0ba16a11429) diff --git a/Xi/exevents.c b/Xi/exevents.c index 91281ae..067e6b3 100644 --- a/Xi/exevents.c +++ b/Xi/exevents.c @@ -1373,7 +1373,7 @@ DeliverTouchEmulatedEvent(DeviceIntPtr dev, TouchPointInfoPtr ti, /* We don't deliver pointer events to non-owners */ if (!TouchResourceIsOwner(ti, listener->listener)) - return Success; + return !Success; nevents = TouchConvertToPointerEvent(ev, &motion, &button); BUG_RETURN_VAL(nevents == 0, BadValue); @@ -1395,7 +1395,7 @@ DeliverTouchEmulatedEvent(DeviceIntPtr dev, TouchPointInfoPtr ti, /* 'grab' is the passive grab, but if the grab isn't active, * don't deliver */ if (!dev->deviceGrab.grab) - return Success; + return !Success; if (grab->ownerEvents) { WindowPtr focus = NullWindow; commit c203568905bcbb65fb1e079b626d2c1e90ecb72d Author: Peter Hutterer <peter.hutte...@who-t.net> Date: Mon May 13 15:22:12 2013 +1000 Xi: fix warning - remove unused 'rc' Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> (cherry picked from commit fd5ea0237db6d725a48f76b706135df9d3246b82) diff --git a/Xi/exevents.c b/Xi/exevents.c index 30e48f0..91281ae 100644 --- a/Xi/exevents.c +++ b/Xi/exevents.c @@ -1036,7 +1036,6 @@ DeliverOneTouchEvent(ClientPtr client, DeviceIntPtr dev, TouchPointInfoPtr ti, static void ActivateEarlyAccept(DeviceIntPtr dev, TouchPointInfoPtr ti) { -- 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/e1v335i-0007vj...@vasks.debian.org