summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)AuthorFilesLines
2009-02-25include: fix indentation for lastSlave/master.Peter Hutterer1-2/+2
Yeah! Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-25Doxygenify events.h and eventconvert.cPeter Hutterer1-95/+51
Should have done that before pushing, but oh well. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23mi: change custom handlers to internal eventsPeter Hutterer1-0/+36
This should re-enable DGA, but XQuartz needs to be changed to internal events too now. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23Input: change processing API to InternalEvents.Peter Hutterer3-15/+11
Don't pass xEvent* and count through to processing, pass a single InternalEvent. Custom handlers are disabled for the time being. And for extra fun, XKB's pointer motion emulation is disabled. But stick an error in there so that we get reminded should we forget about it. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23dix: Deliver{Grabbed|Focused|Device}Events API changed to InternalEvents.Peter Hutterer1-9/+6
With the API change, we can now purge the XI conversion from POE. Note: this commit breaks DGA even more. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23dix: convert passive grabs to use internal events.Peter Hutterer2-6/+4
deviceGrab.sync.event is now an internal event, and CheckDeviceGrabs and friends is changed over. Note that this currently breaks some frozen grabs. See towards the end of ComputeFreezes(). Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23dix: fix EnqueueEvent to work with internal events.Peter Hutterer1-3/+2
Note that we're only partially switched to internal events. The event in the devices' event queue (dev->deviceGrab.sync.event) is still an XI event. The events in syncEvents are InternalEvents only now. This also implies fixing CheckVirtualMotion to work with internal events. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23Xi: make ProcessOtherEvents more InternalEvent aware.Peter Hutterer1-1/+1
Get rid of the deviceValuator processing and a few other things, but still drop back into XI before checking device grabs or doing anything else. NoticeEventTime now needs to take InternalEvents, and while we're at it, change NoticeTime from a macro to a function. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23dix: update CheckMotion to deal with DeviceEvents.Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23Xi: support InternalEvents in UpdateDeviceState, parts of POE and EnqueueEventPeter Hutterer1-2/+1
Note that this breaks DGA. Life is tough. EnqueueEvent is a somewhat half-baked solution, we immediately drop back into XI and store them. But it should in theory work. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Don't let the dcce be random data.
2009-02-23xkb: Switch the xkb event processing path over to InternalEvents.Peter Hutterer2-12/+10
Before dropping down into the DIX, convert back into XI events. This is a temporary solution only, until the DIX is capable of handling InternalEvents anyway. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23dix: change eventconvert to always return an array of xEventsPeter Hutterer1-1/+1
Just alloc the memory on demand rather than doing things with EventListPtrs etc. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23mi: switch the EQ to contain InternalEvents only.Peter Hutterer1-1/+3
This gets rid of the nevents parameter, InternalEvents are always a single item per event. Also remove the special DeviceValuator handling in both enqueueing and dequeueing. Custom callback handlers are now broken until fixed. For bisectability, we copy the InternalEvent back into the XI required during POE and friends. Consider this a temporary solution. Note: Because of misc linker bonghits, Xvfb won't link in this revision. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23dix: add GetCoreType and GetXIType.Peter Hutterer1-0/+2
Convert from an InternalEvent type to the matching core/XI type. Currently only for a few events, those we actually need in the server. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23dix: add InternalEvent -> core/xi event conversion routines.Peter Hutterer2-1/+35
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23include: add XInternalEvent.Peter Hutterer3-1/+181
This is the event we want to feed into the EQ and process on the way through. Only applies for input events for now. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-16dix: Don't set core events in SetMaskForEvent.Peter Hutterer1-1/+1
Rather, modify the two callers to call separately for the two different. events. Unexport SetMaskForEvent too. And while we're at it, get rid of the MotionFilter macro, because it's one half confusing and one half pointless. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-16Xi: remove dynamic mask assignment for XI events.Peter Hutterer1-3/+2
They end up being the same anyway on startup, so let's not have a dynamic mask assignment mechanism and instead just hardcode them already. Also unexport SelectForWindow and remove the valid_masks parameter. We can check that before calling, since there's only one caller anyway. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-16Remove two more define XKB leftovers.Peter Hutterer1-3/+0
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-13dix: remove DefineInitialRootWindow()Peter Hutterer1-3/+0
Obsolete. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-13Document the event masks.Peter Hutterer2-10/+52
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-13dix: refactor pointer accelerationSimon Thum1-1/+1
The algorithm is split in a 2D-specific and a general part. This potentially allows to accelerate more than just screen motion. A state machine is intoduced to make code more explicit and readable. It also improves handling of 'phase 1' mickeys when axial correction kicks in (corner case). Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-03Constify atom name stringsAlan Coopersmith2-3/+3
Changes MakeAtom to take a const char * and NameForAtom to return them, since many callers pass pointers to constant strings stored in read-only ELF sections. Updates in-tree callers as necessary to clear const mismatch warnings introduced by this change. Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-03dix: add SetBit(arr, bit) and ClearBit(arr, bit) to include/inputstr.hPeter Hutterer1-0/+2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-03include: remove now-unused sempahore macros.Peter Hutterer1-15/+0
Obsolete with the new enter/leave model. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-30Move the apple fat binary hacks back to a header file, and make it apple-only.Eric Anholt3-6/+11
2009-01-23Xi: define a range of axis labels.Peter Hutterer1-0/+46
This is copied from linux/input.h, presumably that's the ones at least the Linux kernel can give us for any device. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22Input: Add postdown to ButtonClassRecDaniel Stone1-0/+1
This mirrors that in KeyClassRec: the state of the buttons as posted to GetPointerEvents, rather than the state of the buttons as processed by ProcessOtherEvent and friends. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22Input: Remove unused CoreProcess{Keyboard,Pointer}EventDaniel Stone1-10/+0
Everything goes through XKB's Process{Keyboard,Pointer}Event on its way through to ProcessOtherEvent now, so get rid of the old, useless functions. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22XKB: Remove unused DDX functionsDaniel Stone1-10/+0
They were complete no-ops anyway. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22Input: Remove core keysyms from KeyClassRecDaniel Stone2-9/+3
Instead of always keeping two copies of the keymap, only generate the core keymap from the XKB keymap when we really need to, and use the XKB keymap as the canonical keymap. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22Input: Centralise pointer map changingDaniel Stone2-5/+3
Replace both core and Xi functions with one function that validates the proposed map, and sends out both kinds of notification. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22Input: Clean up keymap change notificationsDaniel Stone3-13/+11
Keyboard map notifications are always generated from within XKB code, which also takes care of copying the keysyms, etc. If you need to mangle the keymap yourself, generate a new core keymap/modmap, and pass it to XkbApplyMappingChange. SendMappingNotify is renamed to SendPointerMappingNotify (and ditto its Device variants), which still only _sends_ the notifications, as opposed to also doing the copying a la XkbApplyMappingChange. Also have the modmap change code traverse the device hierachy, rather than just going off the core keyboard. Signed-off-by: Daniel Stone <daniel@fooishbar.org>
2009-01-22Xi: Introduce XIShouldNotifyDaniel Stone1-0/+5
XIShouldNotify just lets you know if you should send an event for a keymap change (or similar) concerning a given device to a given client; at the moment, this is only for devices which are sending events to that client. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22XKB: Sanitise vmods for redirected keysDaniel Stone1-15/+2
Turn two unsigned chars into one unsigned int for both vmods and the vmod mask. As a bonus, remove broken unused accessor macro for setting the vmods. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22XKB: Sanitise ctrls actionDaniel Stone1-13/+1
Turn four unsigned chars into one unsigned long. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22XKB: Sanitise pointer actionsDaniel Stone1-9/+2
Turn two unsigned chars into one int. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22XKB: Sanitise vmods in actionsDaniel Stone1-9/+2
Turn vmods from two unsigned chars into one int. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22XKB: Add a hell of a lot more FIXMEsDaniel Stone1-61/+86
For some reason, we insist on having daft internal representations that make no sense, that always have to be converted to be used. We should really sort this one out. Also, comment the hojillion members of XkbStateRec. Signed-off-by: Daniel Stone <daniel@fooishbar.org>
2009-01-22XKB: Remove descriptions from maprulesDaniel Stone1-52/+0
We don't use them, as they're not up to the task. We'll get a better solution someday, promise. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22XKB: Remove support for setting combined keymapsDaniel Stone4-13/+6
We don't do full keymaps anymore. Deal. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22XKB: Remove 'extra' functionality from rules parsingDaniel Stone1-17/+1
When we find something weird in the rules, don't stash it as an extra freeform component, just state that the rules file is likely broken and move on with our lives. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22Input: Remove modifierMap from coreDaniel Stone1-2/+1
We already have modmap (in the exact same format!) in XKB, so just use that all the time, instead of duplicating the information. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22Input: Remove modifierKeyMapDaniel Stone3-18/+16
Since modifierKeyMap is generated from modifierMap, just remove it, and only generate it when we need to send the modifier map to the client. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22Input: Remove state from KeyClassRecDaniel Stone1-2/+0
We already have state fully stored within XKB, so instead of duplicating it, just generate the values to send to clients when required. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22Input: Overhaul keyboard initialisation processDaniel Stone2-35/+14
XkbInitKeyboardDeviceStruct is now the only valid keyboard initialisation: all the details are hidden behind here. This now makes it impossible to supply a core keymap at startup. If dev->key is valid, dev->key->xkbInfo->desc is also valid. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22XKB: Make XKB mandatoryDaniel Stone9-52/+0
No more #ifdef XKB, because you can't disable the build, and no more noXkbExtension either. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22XKB: Remove lock actions disablingDaniel Stone1-3/+0
For some reason, XKB allows clients to set a global (!) flag that simply turns lock keys into state no-ops. Ignore this flag. Signed-off-by: Daniel Stone <daniel@fooishbar.org>
2009-01-22XKB: Add XkbRMLVOSetDaniel Stone1-1/+12
XkbRMLVOSet is just a set of strings for rules, model, layout, variant and options; use that in preference to XkbRF_VarDefsRec, which is a hideously complicated monster that somehow managed to not include the actual rules. While we're at it, clean up xkbrules.h so it doesn't require xkbstr.h. Signed-off-by: Daniel Stone <daniel@fooishbar.org>
2009-01-21Update xorg-server.h.in & Xnest to use new XKB default #definesAlan Coopersmith1-4/+4