Commit Graph

121 Commits

Author SHA1 Message Date
Daniel Stone
1546a39814 GetKeyboardValuatorEvents: also take first_valuator param
Take a first_valuator parameter, which specifies the first valuator.
2006-10-08 21:40:53 +03:00
Daniel Stone
41bb9fce47 mipointer: take device arguments, split miPointerAbsoluteCursor
Update mipointer API to take a device argument to (almost) all functions,
and split miPointerAbsoluteCursor into a couple of separate functions.
Remove miPointerAbsoluteCursor call from mieq, as we now deal with it in
GetPointerEvents.
Make miPointerSetPosition (successor of miPointerAbsoluteCursor) take
pointers to x and y, so it can return the clipped values.
Modify callers of miPointer*() functions to generally use the new
functions.
This should fix things with multi-head setups.
2006-10-08 20:34:32 +03:00
Daniel Stone
be8dfafd1d warning cleanups
Fix still more warnings.
2006-10-08 20:32:16 +03:00
Daniel Stone
c2fab469b6 dix/devices: clean up debugging 2006-10-08 18:26:26 +03:00
Daniel Stone
b559cbb160 dix/CoreProcessKeyboardEvent: remove debugging for every key event
Also change #ifdef DEBUG/ErrorF/#endif to DebugF in FixKeyState.
2006-10-08 16:23:14 +03:00
Daniel Stone
58314756ae GetPointerEvents: add first_valuator parameter
Add a first_valuator parameter.  Looks correct by inspection, but untested
with first_valuator != 0 as yet.
2006-10-08 16:18:05 +03:00
Daniel Stone
84f5d2291c GetPointerEvents: fix relatively harmless typo
Change !(cp->button || !cp->valuator) to (!cp->button || !cp->valuator).
2006-10-08 15:30:24 +03:00
Daniel Stone
2cf1098436 dix/events, mi/eq: remove utterly ridiculous debugging
Remove debugging which can cause long-lived Xorg logs to grow well above 1GB
if built with --enable-debug.
2006-09-30 17:05:46 +03:00
Daniel Stone
5d99e05f05 Merge branch 'input-hotplug' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-09-29 00:35:07 +03:00
Daniel Stone
ad631afcf3 make core keyboard/pointer map functions act on all core-sending devices
Make Set{Keyboard,Modifier,Pointer}Mapping act on all devices which send core
events.
Change LegalModifier to accept a DeviceIntPtr.
2006-09-29 00:34:23 +03:00
Zephaniah E. Hull
5893375786 Warning fix, and a syntax fix in a #if 0 section of code. 2006-09-10 15:50:51 -04:00
Daniel Stone
5436fce090 [PATCH] GetKeyboardValutorEvents: be even more careful
Don't accept devices without a keyboard feedback class.
2006-08-29 15:18:06 +03:00
Daniel Stone
2b06c69c8f GKVE: pass correct arguments to XkbCopyKeymap
Fix horrendous thinko.  Indicators now work perfectly.
2006-08-24 14:51:26 +03:00
Daniel Stone
6323a11d0d XkbCopyKeymap: optionally send NewKeyboardNotify/MapNotify events
Optionally send a NewKeyboardNotify or MapNotify event when copying the
keymap; modify GetKeyboardValuatorEvents to make use of this.
2006-08-23 18:53:04 +03:00
Daniel Stone
8f8487ff99 xkb/gkve: copy XKB map, not pointer-assign
Write a new function to copy an XKB map (does everything but geometry at
the moment), and use that instead of nasty pointer assignments.
2006-08-23 14:33:41 +03:00
Daniel Stone
a56b98bb04 dix: enable null root cursor
Enable a blank root cursor, selectable with --enable-null-root-cursor at
configure time.
2006-08-18 18:10:09 +03:00
Daniel Stone
0704bb298c Merge branch 'master' into input-hotplug 2006-08-18 17:30:14 +03:00
Daniel Stone
a1ac0440bb dix: fix whiteroot thinko
Note to self: run git update-index _after_ testing, not just before.
2006-08-18 17:30:00 +03:00
Daniel Stone
cb0a565d2b dix: add whiteroot flag
Add a -wr option to use a white root window, and use a BackPixel rather
than BackPixmap for both white and black root windows.
2006-08-18 17:04:48 +03:00
Daniel Stone
633b6a69f5 Merge branch 'master' into input-hotplug 2006-08-17 21:25:14 +03:00
Daniel Stone
7da51447ea events.c: fix tiny XEvIE thinko
Make sure xeviehot gets updated after the ConfineToShape() call.
2006-08-17 21:24:07 +03:00
Daniel Stone
5d082f0563 events.c: make XEvIE a little less verbose
Change a lot of:
 #ifdef XEVIE
 xeviehot.x =
 #endif
 sprite.hot.x = ...
 #ifdef XEVIE
 xeviehot.y =
 #endif
 sprite.hot.y = ...
to one single
 #ifdef XEVIE
 xeviehot.x = sprite.hot.x;
 xeviehot.y = sprite.hot.y;
 #endif
at the end of the functions.
2006-08-17 21:20:58 +03:00
Daniel Stone
95dbfcf882 events.c: make XEvIE a little less verbose
Change a lot of:
 #ifdef XEVIE
 xeviehot.x =
 #endif
 sprite.hot.x = ...
 #ifdef XEVIE
 xeviehot.y =
 #endif
 sprite.hot.y = ...
to one single
 #ifdef XEVIE
 xeviehot.x = sprite.hot.x;
 xeviehot.y = sprite.hot.y;
 #endif
at the end of the functions.
2006-08-17 21:18:18 +03:00
Daniel Stone
c6c39afde3 dix/events.c: add YAFIXME
Add another FIXME to the cacaphony of XXX and FIXMEs in this file.
2006-08-17 21:13:09 +03:00
Daniel Stone
cd3f744b1f fix missing brace, trim unused variables 2006-08-15 15:54:13 +03:00
Daniel Stone
34228d8b28 GPE: fix absolute button events / GKVE: (non-XKB) don't repeat lock keys
Fix absolute button events in GPE, where we would previously send valuator
events without bumping numEvents accordingly, causing the core event to
go missing.
In the non-XKB path in GKVE, implement proper lock behaviour (one press to
enable, one press to disable, discard releases).
Fix debug_events prototype.
2006-08-15 15:23:53 +03:00
Daniel Stone
d6433be3cc Merge branch 'master' into input-hotplug 2006-08-12 21:50:52 +03:00
Daniel Stone
2bf9e3dc1e make DIX more tolerant of devices without a CtrlProc (Debian #269860)
Return BadDevice on client requests for devices without a CtrlProc, instead
of tanking horribly.
2006-08-12 21:50:39 +03:00
Daniel Stone
984babe86b remove obsolete vendor defines
Remove random behaviour changes for SGI and MetroLink.
2006-08-12 21:43:38 +03:00
Daniel Stone
45bce556e8 GetMaximumEventsNum: be more conservative
Be slightly more conservative in our maximum event count if we're using
XKB (and thus don't need to count the extra repeat events).
2006-08-10 18:02:47 +03:00
Daniel Stone
3832a3d7db GKVE: don't repeat modifiers when using XKB
Make sure we don't ever repeat modifiers (previously was repeating when
using XKB); only do explicit KP/KR repeats in the non-XKB case.  XKB will
take care of repeating when we're using it.
2006-08-10 14:13:51 +03:00
Daniel Stone
9f188416bb core devices: clear devicePrivates on close 2006-08-10 14:00:34 +03:00
Daniel Stone
539d1f3347 GKVE/GPE: have DDX allocate events
Don't allocate events on every GKE/GKVE/GPE call, just have the DDX manage
it instead.  Introduce GetMaximumEventsNum(), which is the maximum number
of events these functions will ever produce.
2006-08-10 14:00:14 +03:00
Daniel Stone
fe351a711e GKVE: send XkbMapNotify, not XkbNewKeyboardNotify
Sending MapNotify is more correct in this case than NKN, so do that.
2006-08-08 14:54:10 +03:00
Daniel Stone
3108981631 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-08-08 12:01:12 +03:00
Daniel Stone
12dbd8a02f remove optional R3 backwards compatibility
Remove the permitOldBugs flag, which enabled backwards compatbility with
broken R2/R3 era clients.
2006-08-07 23:43:40 +03:00
Daniel Stone
458c63a841 enable adding devices after removal of a middle device
Allow new devices to be added after a device that _wasn't_ the last on the
list was removed, by ensuring inputInfo.numDevices always increases, and
never decreases.
2006-08-07 23:02:17 +03:00
Daniel Stone
a31d11a7a8 GKVE: get rid of bogus double-release check
Get rid of a bogus double-release check which broke non-XKB servers.
2006-08-07 23:01:23 +03:00
Daniel Stone
d1c18af27e GPE: use button map for DBP/DBR, not just BP/BR
Make sure we use the button map for extended events, not just core.
2006-08-07 21:11:38 +03:00
Daniel Stone
98fdf874ee move all autorepeat logic to DIX
Move core autorepeat logic for keyboards down to the DIX, remove it from
KDrive.
2006-08-07 16:51:39 +03:00
Daniel Stone
7465010d59 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-07-21 19:05:41 -04:00
Adam Jackson
0aaac95b0d Remove RCS tags. Fix Xprint makefile braindamage. 2006-07-21 17:56:00 -04:00
Daniel Stone
7711c56d2e xephyr: fix keymap, pointer; dix: fix multiple axes
Initialise our axes properly in the DIX, and make sure we don't
unnecessarily clip maxval when it's not set.
Fix keymap copying in Xephyr (to some degree: it's still broken),
and set nAxes and nButtons properly.
2006-07-21 15:19:54 -04:00
Daniel Stone
463e0fe35b update KDrive to new input API
Update KDrive to fit the new API (mieqInit and InitPointerDeviceStruct), and
include InitTouchscreenDeviceStruct in the DIX.
2006-07-21 15:19:54 -04:00
Daniel Stone
1987af8c49 add virtual core devices to DIX
Add virtual core devices, with proper keymaps etc, to the DIX.
2006-07-21 15:19:53 -04:00
Daniel Stone
e896195eab remove extraneous font debugging code
Some of it didn't compile, and some of it was just unnecessary.
2006-07-21 15:19:53 -04:00
Daniel Stone
ecfad74c48 add support for built-in fonts
Use --enable-builtin-fonts to only use built-in fonts, and avoid loading
fonts.
2006-07-21 15:19:52 -04:00
Daniel Stone
a274e7296b add GetPointerEvents/GetKeyboardEvents framework
Add GetPointerEvents (with XFree86 pointer acceleration) and GetKeyboardEvents
to the DIX.  Extend the ValuatorClass structure to account for same.
2006-07-21 15:19:51 -04:00
Daniel Stone
02a9531156 add basic D-BUS configuration mechanism
Also move LookupDeviceIntRec into the DIX, and add InputOption type, and
NewInputDeviceRequest prototype (DIX requests DDX to add a device).  Does not
link without an implemented NIDR.
2006-07-21 15:19:49 -04:00
Daniel Stone
84683f19b4 get rid of XFree86LOADER, XFree86Server, XFree86Module, and IN_MODULE
Get rid of almost all uses of these definitions.  They're still defined for
delinquent out-of-tree drivers, and also for the Mesa build.  As well as
for miinitext.c.  But largely gone.
2006-07-18 18:17:38 -04:00