summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-02-16Update release to 1.13.3-rc1xorg-server-1.13.2.901Matt Dew1-3/+3
2013-02-15XORG_TLS: Pick the first option that works (ie: prefer __thread)Jeremy Huddleston Sequoia1-1/+1
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
2013-02-15os: Ensure <dix-config.h> is included in strndup.cJeremy Huddleston Sequoia1-0/+4
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-02-15XQuartz: Ensure <dix-config.h> is included in capabilities.cJeremy Huddleston Sequoia1-0/+4
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-02-15randr: bump advertised RandR version to 1.4Dave Airlie2-2/+2
Signed-off-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Tested-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Keith Packard <keithp@keithp.com>
2013-01-25Merge branch 'server-1.13-branch' of ↵Matt Dew13-127/+156
git://people.freedesktop.org/~whot/xserver into server-1.13-branch
2013-01-24Bump version number to 1.13.2xorg-server-1.13.2Matt Dew1-3/+3
2013-01-22xserver: fix build regression since 91ab237358c6e33da854914d3de493a9cbea7637Dave Airlie1-2/+0
inputstr, double defines TouchListener typedef, maybe some gcc handles it, but not all. fixes tinderbox Reported-by: Jon TURNEY <jon.turney@dronecode.org.uk> Signed-off-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 605dfc6804a05ff2bda5692fec26c37344fd95cb)
2013-01-21dix: Save touchpoint last coordinates before transform. #49347Yuly Novikov2-19/+14
DDXTouchPointInfoRec.valuators used to store axis values after transform. This resulted in Coordinate Transformation Matrix being applied multiple times to the last coordinates, in the case when only pressure changes in the last touch event. Changed DDXTouchPointInfoRec.valuators to store values before transform. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=49347 Signed-off-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 3b9f1c701787965246638c1a6fd99fb2b6078114) Conflicts: dix/getevents.c
2013-01-21xfree86: don't access the old input handler after freeing itPeter Hutterer1-4/+6
Introduced in 323869f3298cbbfe864af9404a8aed1bf7995d79 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit f4a58469a298c226668fd8dce375bf22331c902d)
2013-01-21xkb: Do not use base group as an array index.Andreas Wettstein1-2/+8
The base group is not brought into range and, therefore, using it as an array index crashed the X server. Also, at this place, we should ignore locked groups, but not latched groups. Therefore, use sum of base and latched groups, brought into range. Reproducible with: key <FK07> { type= "ONE_LEVEL", symbols[Group1]= [ NoSymbol ], actions[Group1]= [ LatchGroup(group=-1, clearLocks) ] }; And hitting F7 will exceed the group level and access arbitrary memory. Signed-off-by: Andreas Wettstein <wettstein509@solnet.ch> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 3578cc3c2e1b5cb8eb191e2d12ad88e1bc9e6e1e)
2013-01-21render: Unwrap early on the animated cursor BlockHandlerCarlos Garnacho1-1/+2
The loop above the previous call may end up triggering other handlers attaching to the same function slot, so unwrapping the handler after that could leave the just attached handler in a dangling but not unset state. This issue was most visible on the XO, where destroying a window with an animated cursor set and running would trigger this inconsistent state, never calling the miSpriteBlockHandler again after the animated cursor is unset. Signed-off-by: Carlos Garnacho <carlosg@gnome.org> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit df746a73410b892a4d41a2934cf9cd2e8ad7ba51)
2013-01-21mi: Ensure pointer emulating touch events update the spriteCarlos Garnacho1-1/+5
Different miPointerSpriteFuncRec implementations do a varying business at ultimately calling miPointerUpdateSprite(), this particularly fails when using the plain mi sprite on touch events, where the sprite is just moved/updated on cursor changes. So, ensure miPointerUpdateSprite() is called generically for pointer emulating touch events as with regular motion events. Signed-off-by: Carlos Garnacho <carlosg@gnome.org> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 0fbd779a82919d5dbf8776be9b57a76c0eae6b14)
2013-01-21dix: remove already-moved hunkPeter Hutterer1-9/+0
Should've been removed in bc1f90a615018c05994fae3e678dd2341256cd82a, but got left here due to a botched rebase. Fixes stray button events sent to clients after deactivating an async pointer grab on a pointer-emulating-touch. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 0e1ab433f4048b3367bb2f01d16cd00502538e4d)
2013-01-21dix: check for the right device's xi2 maskPeter Hutterer1-1/+1
events.c: In function 'DeactivatePointerGrab': events.c:1524:51: warning: 'dev' may be used uninitialized in this function [-Wuninitialized dev is unset when we get here, the device to check is "mouse". Introduced in ece8157a59751b3ed492fb2e1eb8d5f20221e195. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 32a6d8a6b59c42f8d65002d7ca1cafb1957b656f)
2013-01-21dix: add resource type to touch listenersPeter Hutterer4-16/+16
Instead of guessing what resource type the listener is and what property to retrieve, store the resource type in the listener directly. Breaks XIT test cases: TouchGrabTestMultipleTaps.PassiveGrabPointerEmulationMultipleTouchesFastSuccession Fixes https://bugs.freedesktop.org/show_bug.cgi?id=56557 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Keith Packard <keithp@keithp.com> Reviewed-by: Chase Douglas <chase.douglas@ubuntu.com> (cherry picked from commit f59499b5d05fde83813709e9848152951592120d)
2013-01-21input: Record grab pointer in TouchListenerKeith Packard5-29/+24
This places a pointer to the grab related to a TouchListener directly in the TouchListener structure rather than hoping to find the grab later on using the resource ID. Passive grabs have resource ID in the resource DB so they can be removed when a client exits, and those resource IDs get copied when activated, but implicit grabs are constructed on-the-fly and have no resource DB entry. Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 9ad0fdb135a1c336771aee1f6eab75a6ad874aff)
2013-01-21input: Pull TouchListener declaration to top-levelKeith Packard1-8/+10
No reason to have a struct declared inside another struct Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 91ab237358c6e33da854914d3de493a9cbea7637)
2013-01-21xfree86: update the device state for all DGA events (#59100)Peter Hutterer1-3/+6
DGA only handles master devices but it does intercept slave device events as well (since the event handlers are per event type, not per device). The DGA code must thus call into UpdateDeviceState to reset the button/key state on the slave device before it discards the remainder of the event. Test case: - Passive GrabModeSync on VCP - Press button - Enable DGA after ButtonPress - AllowEvents(SyncPointer) - Release button The button release is handled by DGAProcessPointerEvent but the device state is never updated, so the slave ends up with the button permanently down. And since the master's button state is the union of the slave states, the master has the button permanently down. X.Org Bug 59100 <http://bugs.freedesktop.org/show_bug.cgi?id=59100> Reported-by: Steven Elliott <selliott4@austin.rr.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit ad3bc571348a7007a2960bf87ae739397c5511ee)
2013-01-21xfree86: set event->detail for DGA pointer eventsPeter Hutterer1-0/+1
Reported-by: Steven Elliott <selliott4@austin.rr.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit c5f2818edbec2f87383baa6c6be5c389b73ca6f9)
2013-01-21dix: don't filter RawEvents if the grab window is not the root window (#53897)Peter Hutterer1-3/+6
If a XI2.1+ client has a grab on a non-root window, it must still receive raw events on the root window. Test case: register for XI_ButtonPress on window and XI_RawMotion on root. No raw events are received once the press activates an implicit grab on the window. X.Org Bug 53897 <http://bugs.freedesktop.org/show_bug.cgi?id=53897> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 4e13dd90144dde47550aceea4db4b4329e531279)
2013-01-21xfree86: print message to the log when zapping the serverPeter Hutterer1-0/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 3420a7778c7d5eaa638327f31dd460554c257bb1)
2013-01-21Xi: if a TouchEnd appears on a actively grabbing client, always acceptPeter Hutterer1-23/+32
Once the TouchEnd appears on the device, the touch is done. If the client still has a pointer grab, accept it to avoid clients with TouchOwnership selections to wait indefinitely for the actual touch event. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 00def5144557cfe8bf535f926212a8e084dc7cf6) Conflicts: Xi/exevents.c
2013-01-21dix: when deactivating pointer-only grabs, don't emulate TouchEnd eventsPeter Hutterer1-1/+8
A client with a pointer grab on a touch device must reject the touch when detactivating the grab while the touch is active. However, such a rejecting must not trigger a ButtonRelease event to be emulated and sent to the client. Set the grabbing listener's state to HAS_END, so we simply skip delivery to that client. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit ece8157a59751b3ed492fb2e1eb8d5f20221e195)
2013-01-21dix: only reject active grabs on ungrab and do it before actually ungrabbingPeter Hutterer1-0/+9
An active grab ungrabbing is the same as rejecting the grab, since the client is no longer interested in those events. So reject any touch grab, but do so before actually deactivating since we're interested in the TouchEnd for the current grabbing client. A passive grab otoh is _not_ like rejecting a grab, since it deactivates automatically when the touch ends. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit bc1f90a615018c05994fae3e678dd2341256cd82)
2013-01-21dix: don't call ProcessInputEvents() when accepting/rejecting touchesPeter Hutterer1-2/+0
TouchListenerAcceptReject may be called during normal event processing, but ProcessInputEvents is not reentrant and calling it here smashes the event queue. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 146f48c2934fc85ec095496da5c8f0102bc7f5b5)
2013-01-08dix: don't allow overriding a grab with a different type of grab (#58255)Peter Hutterer1-1/+1
If a client has a core grab, don't allow re-grabbing with type XI2, etc. This was the intent of the original commit xorg-server-1.5.99.1-782-g09f9a86, but ineffective. X.Org Bug 58255 <http://bugs.freedesktop.org/show_bug.cgi?id=58255> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Keith Packard <keithp@keithp.com> (cherry picked from commit dd3242c87a0a58cba055eb99c0c3fcf03153e4b8)
2013-01-08dix: don't copy the wrong event mask when activating a passive grabPeter Hutterer1-1/+4
GrabMask is a union of core, XI1 and XI2 masks. If a XI2 grab is activated, the value is a random pointer value, using it as mask has unpredictable effects. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Jasper St. Pierre <jstpierre@mecheye.net> Reviewed-by: Keith Packard <keithp@keithp.com> (cherry picked from commit f793b5fd3eb16a2ada130367c2ffebeede69a322)
2013-01-08Xi: don't use devices after removing themPeter Hutterer1-4/+5
RemoveDevice() frees the DeviceIntPtr, we shouldn't use the pointer after that Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 58bff17e43a80eb21b3ff6d4bb1596230e61f707)
2013-01-03version bump for 1.13.1.901 (rc1)xorg-server-1.13.1.901Matt Dew1-3/+3
2013-01-03EnableDisableExtensionError: Use ARRAY_SIZE rather than sentinelAlan Coopersmith1-3/+6
d785368e0e converted the other miinitext functions to use ARRAY_SIZE, and removed the sentinel, but missed EnableDisableExtensionError so passing an invalid extension name could cause the server to walk off the end off the list looking for a sentinel that wasn't there. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-01-03glx/dri2: initialise api to avoid indirect rendering failing randomlyDave Airlie1-1/+1
Running glxinfo under indirect rendering would randomly fail against the intel driver, as it would create a context with no attribs, and then the api value would be passed to the driver uninitialised. Signed-off-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Keith Packard <keithp@keithp.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Keith Packard <keithp@keithp.com>
2012-12-23vfb: Initialize the GLX extension again.Raphael Kubo da Costa1-0/+19
This should fix a regression in the 1.13.0 release: commit 5f5bbbe543f65c48ecbb5cce80116a86ca3fbe86 removed a code path used by Xvfb and made it use the default one when initializing extensions. However, this meant the GLX extension was not initialized anymore since it is not part of the `staticExtensions' array. Since it is not possible to just add it to that array after commit aad428b8e21c77397c623b78706eb64b1fea77c9, adopt an approach similar to xwin's and xquartz's and initialize the extension from vfb's `InitOutput'. Signed-off-by: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com> Reviewed-by: Daniel Stone <daniel@fooishbar.org>
2012-12-19XQuartz: Don't add the 15bit visual any moreJeremy Huddleston Sequoia2-7/+14
Mountain Lion only supports 32bit backing stores, so don't use 15bit visuals until libXplugin adapts Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> (cherry picked from commit ba4bb3bc1b87eb57cc34d2ad1f302c9d2a15c847)
2012-12-18XQuartz: Add some verbose logging to debug xp_lock_window being unbalancedJeremy Huddleston Sequoia1-0/+28
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> (cherry picked from commit f54987de97720200ee94eba1c7a737d4ad8c55c8)
2012-12-18XQuartz: Avoid a possible deadlock with DRI on OS X 10.7.5 and OS X 10.8.2Jeremy Huddleston Sequoia1-0/+6
<rdar://problem/12338921> http://bugs.winehq.org/show_bug.cgi?id=31751 Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> (cherry picked from commit 25d26875bc9bd6fd23ae1b5280f015abf1b033b7)
2012-12-13No changes from 1.13.0.902 (rc2)xorg-server-1.13.1Matt Dew1-3/+3
Bump version to 1.13.1
2012-12-06Bump versionxorg-server-1.13.0.902Matt Dew1-3/+3
2012-12-06Merge branch 'server-1.13-branch' of ↵Matt Dew7-9/+24
git://people.freedesktop.org/~whot/xserver into server-1.13-branch
2012-12-05Xi: Fix modifier swapping in XIPassiveGrabDeviceDaniel Martin1-5/+3
XIPassiveGrabDevice uses a list of uint32_t as modifier sets. The ModifierInfo struct represents the current modifier states and is therefor used in XIQueryPointer and various events. Signed-off-by: Daniel Martin <consume.noise@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit aa9a9ad08b8a6e7e95de7c2bf45d93dd50f9ca87)
2012-12-05hw/dmx: add update_desktop_dimensions() callSybren van Elderen1-0/+2
The Xdmx server did not update the desktop dimensions when computing screen origins. Signed-off-by: Sybren van Elderen <sowmestno@msn.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 6e18599d691036eca6ff082c17727d9ffb926984)
2012-12-05xkb: fill in keycode and event type for slow keys enablementPeter Hutterer2-2/+5
eventType is set for the type that triggered a XkbControlsNotify event. Technically, SlowKeys is triggered by a timer which doesn't have a matching core event type. So we used to use 0 here. Practically, the timer is triggered by a key press + hold and cancelled when the key is released before the timeout expires. So we might as well set KeyPress (keycode) in the ControlsNotify to give clients a chance to differ between timer-triggered SlowKeys and client-triggered ones. This is a chance in behaviour, though I suspect with little impact. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Daniel Stone <daniel@fooishbar.org> (cherry picked from commit 2c4388a00ec308bc2d48ba751ff510cd5c1b2384)
2012-12-05cursor: Revise edge cases for the pointer moving towards barriersJasper St. Pierre1-2/+10
Since barriers block the invisible line between pixels, that means that we need to explicitly check the boundaries, or else we'll have a potential off-by-one error. This fixes issues when trying to move down or right across a barrier and having the pointer visibly bounce. Signed-off-by: Jasper St. Pierre <jstpierre@mecheye.net> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit a51b2c3913fc8556f6bd1c76805d045fc424c4bb)
2012-12-05When resetting device idle time, reset XIAll(Master)Devices too (#56649)Peter Hutterer2-0/+4
When the screen saver is forcibly deactivated, the idle time counter is reset for all devices but not for the fake XIAllDevices and XIAllMasterDevices. XScreenSaverQueryInfo uses XIAlldevices to fill the "idle" field, thus returning the wrong value. Regression introduced in commit 6aef209ebc2e54f5465da505a780f7b4cc273ee0 Author: Peter Hutterer <peter.hutterer@who-t.net> Date: Mon Mar 12 13:51:02 2012 +1000 Change lastDeviceIdleTime to be per-device X.Org Bug 56649 <http://bugs.freedesktop.org/show_bug.cgi?id=56649> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Tested-by: Giacomo Perale <ghepeu@virgilio.it> Reviewed-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 2dc6d9228456cbc274a1fcea478258e5ae4dc629)
2012-12-04xf86: select a fake output for headless serversChris Wilson1-0/+4
Following commit 37d956e3ac9513b74078882dff489f9b0a7a5a28 Author: Keith Packard <keithp@keithp.com> Date: Mon Sep 10 11:14:20 2012 +1000 xf86: fix compat output selection for no output GPUs headless servers can no longer startup as we no longer select a compat output for the fake framebuffer. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56343 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit e54f71a2c7a1677a5c5032d1e7dc099d5204144b)
2012-12-04xf86: fix compat output selection for no output GPUsKeith Packard1-1/+2
This should work properly with dynamic outputs. Reviewed-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 37d956e3ac9513b74078882dff489f9b0a7a5a28)
2012-12-04randr: call RRProviderInit in the proper place.Dave Airlie1-0/+2
No idea where this got lost across development cycles, but its definitely missing. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=57448 Signed-off-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit e9ea96d6a88f197928c82b008953f1810de6f792)
2012-11-22Bump release info for this RC1.xorg-server-1.13.0.901Matt Dew1-3/+3
2012-11-07EXA: Track source/mask pixmaps more explicitly for Composite fallback regions.Michel Dänzer2-4/+13
In particular, make sure pExaScr->src/maskPix are cleared when the corresponding pictures aren't associated with drawables, i.e. solid or gradient pictures. Without this, we would in some cases associate the source/mask region with unrelated pixmaps from previous Composite fallbacks, resulting in random corruption. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=47266 Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 1ca096d5e07221025c4c4110528772b7d94f15ee)
2012-11-07Merge branch 'server-1.13-branch' of ↵Matt Dew7-12/+62
git://people.freedesktop.org/~whot/xserver into server-1.13-branch