summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-12-05Fix formatting of address operatorsHEADmasterYaakov Selkowitz68-338/+338
The formatter confused address operators preceded by casts with bitwise-and expressions, placing spaces on either side of both. That syntax isn't used by ordinary address operators, however, so fix them for consistency. Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-11-30Merge remote-tracking branch 'whot/for-keith'Keith Packard12-131/+122
2012-11-30randr: 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>
2012-11-29Merge branch 'high-resolution-touch-devices' into for-keithPeter Hutterer5-108/+99
2012-11-29hw/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>
2012-11-29dix: use pixman for fp1616 conversionsPeter Hutterer1-19/+2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Søren Sandmann <ssp@redhat.com>>
2012-11-29xkb: 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>
2012-11-29When 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>
2012-11-29cursor: 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>
2012-11-28Merge remote-tracking branch 'jturney/mingw-patches'Keith Packard7-4/+34
2012-11-28hw/xwin: Fix for MinGW-w64 DirectDraw headersYaakov Selkowitz3-1/+6
mingw-w64 headers handle NONAMELESSUNION earlier than mingw.org's, so it must be defined before including any headers. It also provides a ddraw.h, so use it. Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Keith Packard <keithp@keithp.com>
2012-11-28dix/dispatch.c, os/utils.c: Disable smart scheduler on WIN32Jon TURNEY2-0/+13
setitimer() and SIGALRM aren't available on WIN32, so smart scheduler code cannot be built. Provide only stubs for smart scheduler timer code, and disable smart scheduler by default. Signed-off-by: Ryan Pavlik <rpavlik@iastate.edu> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk> Tested-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> Reviewed-by: Keith Packard <keithp@keithp.com>
2012-11-28os/osinit.c: no getpgrp() and setpgrp() on WIN32Ryan Pavlik1-0/+2
Signed-off-by: Ryan Pavlik <rpavlik@iastate.edu> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk> Tested-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> Reviewed-by: Keith Packard <keithp@keithp.com>
2012-11-28hw/xwin: use raise() instead of kill()Yaakov Selkowitz1-1/+2
MinGW doesn't have kill(), so use raise() instead Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Keith Packard <keithp@keithp.com>
2012-11-28os/utils.c: Fix compilation of OsBlockSIGIO when SIGIO isn't definedJon TURNEY1-2/+2
Fix compilation of OsBlockSIGIO with -Werror=return-type when SIGIO isn't defined. /jhbuild/checkout/xorg/xserver/os/utils.c: In function 'OsBlockSIGIO': /jhbuild/checkout/xorg/xserver/os/utils.c:1248:1: error: control reaches end of non-void function [-Wreturn-type] v2: Shuffle around to avoid writing unreachable code Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Tested-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> Reviewed-by: Keith Packard <keithp@keithp.com>
2012-11-28os/osinit.c, os/utils.c: Exclude sigaction code when building for MinGWRyan Pavlik2-0/+9
MinGW doesn't have sigaction, so this patch is needed for building. No attempt is made to actually install the fatal error signal handler, as MinGW will simply terminate the process rather than deliver a fatal signal. Also avoid using strsignal Signed-off-by: Ryan Pavlik <rpavlik@iastate.edu> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk> Tested-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> Reviewed-by: Keith Packard <keithp@keithp.com>
2012-11-27xf86: 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>
2012-11-27xf86: Fix non-PCI configuration-less setupsThierry Reding1-0/+8
For non-PCI video devices, such as those found on many ARM embedded systems, the X server currently requires the BusID option to specify the full path to the DRM device's sysfs node in order to properly match it against the probed platform devices. In order to allow X to start up properly if either the BusID option was omitted or no configuration is present at all, the first video device is used by default. Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de> Reviewed-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Keith Packard <keithp@keithp.com>
2012-11-27Merge remote-tracking branch 'daniels/master'Keith Packard10-11/+50
2012-11-27hw/xwin: Don't spam MotionNotify events when the mouse hasn't movedColin Harrison1-2/+7
Don't spam MotionNotify events when the mouse hasn't moved, when polling the mouse position outside any X window (Test with 'xev -root' after mouse polling has started.) Signed-off-by: Colin Harrison <colin.harrison@virgin.net> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2012-11-27hw/xwin: Don't log all fbConfigs and GL/WGL extensionsJon TURNEY1-7/+15
Don't log all fbConfigs and GL/WGL extensions, unless verbose logging is requested Log the number of pixelFormats which gave rise to the fbConfigs Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Use pre-computed extent of damage for creating GDI regionJon TURNEY3-30/+13
When -clipupdates option is specified, use the pre-computed extent of damage, rather than computing a GDI region which combines all the individual boxes in the damage. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Ensure we own the clipboard before checking the format of it's contentsJon TURNEY1-18/+18
Ensure we own the clipboard before checking the format of it's contents, this prevents the contents from changing underneath us. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Disable minimize button on window with skip-taskbar stateColin Harrison1-0/+3
If a window has had its taskbar button removed, disable its minimize button to prevent it becoming lost Signed-off-by: Colin Harrison <colin.harrison@virgin.net> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2012-11-27hw/xwin: Process _NET_WM_STATE_SKIP_TASKBAR hint in multiwindow mode.Jon TURNEY1-6/+26
Set WS_EX_TOOLWINDOW style to hide window from Alt-Tab switcher Use ITaskBarList interface to ensure that the taskbar notices if the window has changed it's style in a way which affects if the taskbar shows it or not Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Add a simple interface to the ITaskbarList COM interfaceJon TURNEY3-0/+96
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Enable RANDR resize by defaultJon TURNEY3-6/+8
Also fix erroneous use of '--resize' not '-resize', and document '-noresize' in man page Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Enable AIGLX by defaultYaakov Selkowitz3-3/+3
Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Restore non-latching modifier key state when an X window gains focusOliver Schmidt1-0/+22
In multiwindow mode, the state of the modifier keys was lost when a window is created (or raised) and focus moved to that window. For example: In window A Ctrl + some key opens a window B, then in window B Ctrl + some other key triggers the next action. However after the opening of window B the Ctrl key has to be released and pressed again. If the user keeps the Ctrl key held down when the window B is opened, the next key press X will be interpreted as X and not as Ctrl+X. Extended the function winRestoreModeKeyStates in winkeybd.c to consider not only the latching modifier keys but also the modifiers Ctrl, Shift, Alt/AltGr by using the Windows function GetAsyncKeyState. A combined Ctrl+AltGr modifier state cannot be restored correctly, as Windows always fakes a Ctrl-L when AltGr is pressed. Signed-off-by: Oliver Schmidt <oschmidt-mailinglists@gmx.de> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Give our logical xor operator a more logical nameJon TURNEY2-16/+12
Also, rather than a comment about why we need a logical operator, let's have a comment about what we are doing to the keyboard state... Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Add correct taskbar grouping of X windows on Windows 7Tobias Häußler7-3/+234
I created a small patch for XWin that adds correct grouping of taskbar icons when 'Always combine, hide labels' is set in the taskbar properties. It uses the new taskbar APIs introduced in Windows 7 to set an application id for each window. The id is based on the X11 class hints. v2: Add file to _SOURCES to fix distcheck v3 : Fix compilation with mingw-w64 w32api headers Include propkey.h, propsys.h rather than defining necessary stuff ourselves v4: Fix up names taskbar->propertystore, AppID->AppUserModelID, etc. Link directly with ole32 for PropVariantClear(), prototyping it if neccessary. v5: Put winSetAppUserModelID()-related code in a separate file. Drop a superfluous assign to hr of ignored HRESULT of SetValue() Signed-off-by: Tobias Häußler <tobias.haeussler@gmx.de> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Fix function name in log messageJon TURNEY1-1/+1
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Allow XScreenSaverSuspend() to effect Windows screen saver or ↵Jon TURNEY1-0/+9
monitor power off Reset the idle timer in the block handler if screenSaverSuspended is set. This isn't quite a complete solution. We should also set the block timeout to something less than the idle timer timeout to ensure we will reset the idle timer before it times out if we are blocking. The idle timer timeout is presumably the first one to expire of the screen saver activation or monitor low power or power down timeout, depending on configuration. Unfortunately this is probably not straightforward to do. Whilst SystemParametersInfo(SPI_GETSCREENSAVETIMEOUT) is portable, apparently SPI_GETLOWPOWERTIMEOUT and SPI_GETPOWEROFFTIMEOUT are not supported by Windows versions 6.0 or later, and the interface for discovering equivalent value is complex. This doesn't matter in the case where a media player or similar application is the one making the XScreenSaverSuspend() requests, as it will be continuously drawing, causing the X server to become unblocked often. In the case where slide show presentation application or similar is the one making the XScreenSaverSuspend() request, this might be a problem. Since "Powerpoint is Evil" [1], I think we'll leave it like this till someone complains :-) [1] http://www.edwardtufte.com/tufte/books_pp v2: conditionalize on SCREENSAVER Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Avoid logging an extra blank line if BUILDERSTRING is emptyJon TURNEY1-1/+3
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Report which drawing engines are being enabled when checking for ↵Jon TURNEY1-3/+3
support Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-27hw/xwin: Show any fatal error messageJon TURNEY1-6/+26
Report the fatal error message in the dialog we pop up, rather than just referring the user to the logfile. v2: Do this a better way since the "Pass the FatalError message to OsVendorFatalError" patch has landed, and OsVendorFatalError() now gets passed the fatal error message Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2012-11-21Ephyr: Find the right host screen when embeddedSjoerd Simons1-1/+3
When Xephyr is embedded into another application (e.g. in xoo), the input events may come from the parent Window instead of our own. So make sure we find the host screen in that case as well instead of crashing. Signed-off-by: Sjoerd Simons <sjoerd.simons@collabora.co.uk> Reviewed-by: Daniel Stone <daniel@fooishbar.org>
2012-11-21vfb: 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-11-21DMX: Add DMX and GLX extensionsDaniel Stone3-5/+23
Unfortunately this also got lost in the extmod fallout, leaving the DMX server not exposing the DMX or GLX extensions. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-11-21Constify extensions in LoadExtension usersDaniel Stone3-3/+3
Signed-off-by: Daniel Stone <daniel@fooishbar.org> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-11-21Constify argument to LoadExtensionDaniel Stone2-2/+2
Since we never modify it. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-11-20dix: Save touchpoint last coordinates before transform. #49347Yuly Novikov2-15/+9
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>
2012-11-20Simplify GetTouchEventsThomas Jaeger1-49/+17
With only one callee left, we are free to assume that !(flags & TOUCH_CLIENT_ID) Signed-off-by: Thomas Jaeger <ThJaeger@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-11-20Don't use GetTouchEvents in EmitTouchEndThomas Jaeger3-14/+40
As before GetTouchEvents causes unwanted side effects. Add a new function GetDixTouchEnd, which generates a touch event from the touch point. We fill in the event's screen coordinates from the MD's current sprite position. Signed-off-by: Thomas Jaeger <ThJaeger@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-11-20Don't use GetTouchEvents when replaying eventsThomas Jaeger2-34/+29
GetTouchEvents has plenty of side effects such as moving the pointer or updating the master device, which we don't want to happen when replaying. The only reason for calling it was to generate a DCCE event, but GetTouchEvents doesn't even do that right (we might need a DCCE event even when replaying a master event, or clients could interpret valuator data incorrectly). This discussion is moot at the moment anyway, since DeliverTouchEvents doesn't appear to deliver DCCE events. Signed-off-by: Thomas Jaeger <ThJaeger@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> [Added call to processInputProc instead of direct call to DeliverTouchEvents] Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-11-20Update the MD's position when a touch event is receivedThomas Jaeger1-0/+8
Signed-off-by: Thomas Jaeger <ThJaeger@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-11-18Merge remote-tracking branch 'whot/for-keith'Keith Packard14-399/+71
2012-11-19linux: Prefer ioctl(KDSKBMUTE, 1) over ioctl(KDSKBMODE, K_OFF)Adam Jackson1-10/+23
K_OFF is a slightly broken interface, since if some other process (cough, systemd) sets the console state to K_UNICODE then it undoes K_OFF, and now Alt-F2 will switch terminals instead of summoning the Gnome "run command" dialog. KDSKBMUTE separates the "don't enqueue events" logic from the keymap, so doesn't have this problem. Try it first, then continue falling back to older methods. Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=859485 Tested-by: Josh Boyer <jwboyer@redhat.com> Signed-off-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-11-19xfixes: let PointerBarrierClient->device_ids point to allocated memoryPeter Hutterer1-0/+4
"Fixed" up Jasper's original patch [1] to use pointers instead of zero-length arrays but didn't actually set the pointer to anywhere. [1] 9a536820f6174befb22431bab375ef1af0a1ec29 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-By: Jasper St. Pierre <jstpierre@mecheye.net>
2012-11-19Xi: 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>