With Xinerama support built into the X server but not in use,
sprite.screen is NULL and yet the SyntheticMotion
macro would dereference it. Avoid that by just passing sprite.screen
to PostSyntheticMotion which can then dereference it when Xinerama is
enabled.
Also, define PostSyntheticMotion in dixevents.h and include dixevents.h in
getevents.c
Remove keymap copy from GetKeyboardValuatorEvents, as
SwitchCoreKeyboard now takes care of this for us.
Remove unused variable and function prototype.
Update comments to be as informative as possible.
Move the keymap copying to event processing time (in
ProcessInputEvents), instead of being at event enqueuing time.
Break SetCore{Pointer,Keyboard} out into separate functions.
Change mieqEnqueue to take a device pointer, that asks for the
_original_ device associated with this event.