summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)AuthorFilesLines
2010-03-12Record: Avoid duplicates from replaying frozen eventsDaniel Stone1-0/+30
Reintroduce a check which used to be there in the old ProcessKeyboardEvent/ProcessPointerEvent codepath, which avoids us recording events subject to a grab twice: once when it's first processed in EnqueueEvent, and then again when it's thawed and being replayed. This required a tiny amount of code motion to expose syncEvents. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit a2ea8c2f2cc53607d57d60f41c879380ea70cd02) Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-02-23libselinux now has a pkgconfig file. Use it.Eamon Walsh1-2/+0
Also remove HAVE_NETLINK_AVC_ACQUIRE_FD tests, because we now require a version of libselinux that has it. Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov> Reviewed-by: Keith Packard <keithp@keithp.com>
2010-02-23Re-enable RECORD extension.Chris Dekter2-6/+6
RECORD was disabled during the switch to internal events. This patch modifies the record callback to work with internal events instead of xEvents. The InternalEvents are converted to core/Xi events as needed. Since record is a loadable extension, the EventTo* calls must be externed. Signed-off-by: Chris Dekter <cdekter@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 122fc0e7a0712df4ec2bd9ca6773f90bcd2095cf) Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-01-08Do not define members of include/eventstr.h:EventType enum conditionally.Adam Tkac1-4/+0
Main problem is that EventType enumeration members can be different in module and in server, which obviously causes problems. Signed-off-by: Adam Tkac <atkac@redhat.com> Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 8d53d84485fdce8ea9686e6f300a69f7ddebd467)
2009-12-23Convert checks for PC98 support from platform #ifdefs to configure flagAlan Coopersmith1-0/+3
Default remains the same - on for most OS'es on i386 (except Solaris), off for everyone else. Can be manually toggled via --enable-pc98 or --disable-pc98. Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit b63912ed4c69fedd1bea92274d6cae0429a79677)
2009-10-21dix: Export IsPointerDevice() and IsKeyboardDevice().Eamon Walsh1-2/+2
Makes the functions available to extmod for extensions to call. Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov> (cherry picked from commit 0ae1632be045bfbb288bb57190c830f94247460f)
2009-09-30dix/glx/composite: consolidate visual resize in one place.Dave Airlie1-0/+5
The previous code was copied and in both cases incorrectly fixed up the colormaps after resizing the visuals, this patch consolidates the visual resize + colormaps fixups in one place. This version also consolidates the vid allocation for the DepthPtr inside the function. I'm not 100% sure colormap.[ch] is the correct place for this but visuals are mostly created in fb and I know thats not the place to be resizing them. Fixes fd.o bug #19470. Signed-off-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 6ffda5aae75272fabdc27d6f693ae827be119e95)
2009-09-27XQuartz: Transition from xEvent based mieq to InternalEventJeremy Huddleston2-0/+21
2009-09-27Xi: CopyKeyClass is not static for XQuartzJeremy Huddleston1-0/+1
2009-09-22input: don't use typecasts to access members of InternalEvent.Peter Hutterer1-4/+4
To avoid confusion, the member names are now postfixed with _event. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-21input: define server-supported protocol versions in one single file.Peter Hutterer2-1/+150
include/protocol-versions.h specifies each extension version as supported by the server and sent back on the wire to the client. This fixes up several issues with the server potentially reporting a higher version of the protocol if recompiled against a newer version of the protocol. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: RĂ©mi Cardona <remi@gentoo.org> Acked-by: Julien Cristau <jcristau@debian.org>
2009-09-20Eliminate bogus event resizing.Keith Packard1-3/+0
Now that all event queues hold internal events only, they never need to be resized. Resizing them led to memory corruption as they would get sized for an appropriate xEvent, not an internal event. Signed-off-by: Keith Packard <keithp@keithp.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-18xfree86: use SendDevicePresenceEvents instead of manual event handling.Peter Hutterer1-0/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-17Add configuration option for use of SIGIO handlers for input eventsAlan Coopersmith1-0/+3
Boolean option to enable/disable SIGIO handlers is set by the first of these found: - UseSIGIO option is set in xorg.conf ServerFlags - Default set at build time by ./configure --enable-use-sigio-by-default - Platform default value: Solaris = no, all others = yes This matches the current settings on all platforms except Solaris. This reverts Solaris (for now) to the settings used in Xorg 1.6, before SIGIO support for Solaris was added, due to some system level bugs that won't be resolved in time for Xorg 1.7 release, but allows us to enable when those are resolved (or when we need to test if they're resolved). See http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6879897 Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-13xkb: split effectiveGroup calculation into separate utility function.Peter Hutterer1-0/+5
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-07dix: remove dixLookupResource - we don't have any users left.Peter Hutterer1-8/+0
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Eamon Walsh <ewalsh@tycho.nsa.gov> Acked-by: Aaron Plattner <aplattner@nvidia.com>
2009-09-04XQuartz: Use --with-launchd-id-prefix for consistency with xinitJeremy Huddleston1-0/+3
Also actually honor LAUNCHD_ID_PREFIX and APPLE_APPLICATION_NAME (cherry picked from commit 990038ab006b2f5e03dcef385514ba4e4584bd25)
2009-09-04input: allow for detectable autorepeat.Daniel Stone2-3/+2
For core and XI1 events, store the key_repeat flag in the sequence number until TryClientEvents. The sequenceNumber is unset until TryClientEvents. [Also thrown in, some random indentation changes. Thanks] Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-03Xi: if XISetEventMask fails, return this to the client.Peter Hutterer1-1/+1
The only failure point can be a BadAlloc. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-03Xi: Unify checking for invalid bits in grab masks.Peter Hutterer1-0/+3
Bits above XI2LASTEVENT are invalid and cause in BadValues. These checks must be performed anywhere where a mask_len parameter is given. This patch also adds the missing checks to grab masks. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-03Un-export ApplyPointerMapping. This is an in-server function.Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-28xf86 ddx: add vga arbiter support.Dave Airlie1-0/+3
This adds support for using the libpciaccess interface for vga arbitration support on top of a kernel which supports it. Currently patches are queued for kernel 2.6.32 in jbarnes pci tree, and shipping in Fedora kernel. Co-authors: Tiago Vignatti <tiago.vignatti@nokia.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
2009-08-27Xext: rename Xtst* to XTest*Peter Hutterer2-5/+5
This patch corrects a misnaming of XTest-related functions. The extension itself announces itself as XTEST. Xtst is the library name itself, but all library functions are prefixed by XTest. Same with the naming in the server. - Rename all *Xtst* functions to *XTest* for consistency with the library and in-server API. - Rename the "Xtst device" property to "XTEST device" for consistency with the extension naming. - Rename the device naming to "<master device name> XTEST device". The default xtest devices become "Virtual core XTEST pointer" and "Virtual core XTEST keyboard". Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-27input: move XTest device initialization into Xext/xtest.cPeter Hutterer1-0/+1
XTest devices are non-optional but nonetheless specific to the XTEST extension. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-25Ensure that rotation updates happen frequentlyKeith Packard1-0/+6
The smart scheduler is designed to minimize scheduler overhead by increasing the interval between WaitForSomething calls when a single client is running. However, the software rotation code depends on its BlockHandler being invoked for screen updates; the long delays caused by the smart scheduler optimizations means that screen updates can be delayed a long time as well. The change is simple -- prevent the smart scheduler from increasing the scheduling interval while any screen is using software rotation. Signed-off-by: Keith Packard <keithp@keithp.com>
2009-08-24input: move CorePointer/KeyboardProc declarations into header.Peter Hutterer1-0/+3
The extern declaration in xichangehierarchy.c was broken anyway. This fixes a crash on creating a new master device. Reported-by: Maxim Levitsky Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-17dix: rework DeviceChangedEvents a bit.Peter Hutterer1-10/+5
DCEs are now processed when sent throught the master device, not when sent through the slave device. This includes a removal of some un-used (or partly used) fields in the DCE itself to something more self-explanatory. TODO: if a device has events queued and its attachment is changed, the DCE is silently dropped now. Instead, it should be generated as soon as the first event after the attachment is sent. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-17include: XInputExtensionInit doesn't need to be exported.Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-17include: Unexport most symbols from exevents.h.Peter Hutterer1-105/+136
And shuffle them around so that the part used by drivers is up the top and commented. Also, woo, the sdksyms script doesn't like declarations with return type and function name on the same line... Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-13Add new VT support for OpenSolaris & future Solaris releasesAaron Zang1-0/+3
Signed-off-by: Aaron Zang <Aaron.Zang@Sun.COM> Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-08-13Remove support for Solaris x86 releases older than Solaris 8Alan Coopersmith2-6/+0
If you want to run a pre-1999 kernel, you'll need a pre-2009 X server [Some pre-Solaris 8 VT support is left by this patch to allow reuse by the new Solaris VT support that follows in the next patch.] Signed-off-by: Aaron Zang <Aaron.Zang@Sun.COM> Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-08-13include: correct a copy/paste error in a comment.Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-13Xi: un-statify XI2EventSwap, it is needed for tests.Peter Hutterer1-0/+4
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05dix: require PointerProc and KeyboardProc to be passed into AllocDevicePair.Peter Hutterer1-0/+2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05xkb: remove now-unused XkbGetKeysym.Peter Hutterer1-4/+0
XkbGetKeysyms was only used by the now-removed Keysym grabs. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-30include: DeviceFocusEvent is not to be exported.Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-30input: switch internal event types to enums.Peter Hutterer1-5/+5
Use enum EventType instead of ints. This requires a load of default cases in various switch statements to silence compiler warnings. Reported-by: Aaron Plattner Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-30include: fix enum EventType declaration.Peter Hutterer1-2/+2
Having EventType after the enum declares a variable. silly me. Reported-by: Aaron Plattner Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-30xkb: move XkbFilterEvents to xkbsrv.hPeter Hutterer1-0/+5
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-30include: untangle events.h from the SDK headers.Peter Hutterer4-208/+243
InternalEvents shouldn't be used anywhere outside the X server itself. Split up into events.h for opaque typedefs for the events needed by various headers and eventstr.h for the actual struct definitions. eventstr.h must only be included by code that requires internal events and is not part of the SDK. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-28pci: add support for pci is boot vga call.Dave Airlie1-0/+3
This allows us to ask the kernel for the boot VGA device instead of nasty guessing.
2009-07-23Fix dist.Aaron Plattner1-2/+4
* Makefile.am: Include the test/ subdirectory in the dist tarball. * include/Makefile.am: Move events.h to sdk_HEADERS and eventconvert.h to EXTRA_DIST so they're included in the tarball. events.h shouldn't be included in the SDK either, but for now it's needed by input.h.
2009-07-20XQuartz: Initial support for automatic updates through SparkleJeremy Huddleston1-0/+3
(cherry picked from commit c45f1be36426bceeef9af67c26351114f14f5277)
2009-07-15xkb: Remove XKMformat.h include from xkbsrv.h into the files that need it.Peter Hutterer1-1/+0
xkbsrv.h is used by drivers, they don't need the XKM format and shouldn't require it. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-15Update to type-specific raw events - require inputproto 1.9.99.14.Peter Hutterer2-4/+7
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-14include: introduce byte counting functions.Peter Hutterer1-0/+30
This patch adds the following three functions: bits_to_bytes(bits) - the number of bytes needed to hold 'bits' bytes_to_int32(bytes) - the number of 4-byte units to hold 'bytes' pad_to_int32(bytes) - the closest multiple of 4 equal to or larger than 'bytes'. All three operations are common in protocol processing and currently the server has ((foo + 7)/8 + 3)/4 operations all over the place. A common set of functions reduce the error rate of these (albeit simple) calculations and improve readability of the code. The functions do not check for overflow. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-12input: include effective modifiers in device events.Peter Hutterer1-0/+2
Require inputproto 1.9.99.13 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-10Revert "XKB: Sanitise * actions" commits (#19602)Peter Hutterer1-7/+46
Reverts the following four patches: feb757f384382c7782ceac55 "XKB: Sanitise vmods for redirected keys" b5f49382fe48f0a762d9a15f "XKB: Sanitise ctrls action" 1bd7fd195d85681e722161f8 "XKB: Sanitise pointer actions" 61c508fa78aa08ea2666fde9 "XKB: Sanitise vmods in actions" Strictly speaking, the structs used in the server are not part of the client ABI. Practically, they are as we copy from the wire straight into the structs. Changing the struct sizes breaks various wire/server conversions. Even when the structs have the same size, some internal magic causes conversions to fail. Visible by diffing the output files of: setxkbmap -layout de; xkbcomp -xkb :0 busted.xkb setxkbmap -layout de -print | xkbcomp -xkb - correct.xkb Interestingly enough, busted.xkb is the working one although the output is incorrect. Revert the four offending patches until the exact cause of this breakage can be determined. This patch restores functionality to Level3 modifiers. X.Org Bug 19602 <http://bugs.freedesktop.org/show_bug.cgi?id=19602> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-06s/MAX_DEVICES/MAXDEVICES/ updates.Peter Hutterer1-1/+1
The number of input devices is MAXDEVICES, not MAX_DEVICES (f781a752e6) Two comments updated to refer to MAXDEVICES. MAX_FUNCS in sigio.c was set to 16 if MAX_DEVICES was undefined. If more than 15 physical input devices were present, this could result in a failure to install the SIGIO handler for any device above 15. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-01dix: introduce "Xtst Device" label property.Peter Hutterer1-0/+2
Xtst devices get this property assigned automatically so they can be detected easily by a client. The property is read-only. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>