Commit Graph

50 Commits

Author SHA1 Message Date
Daniel Stone
57b767d292 DMX: Remove useless miPointerUpdateSprite call
miPointerUpdateSprite is already called from mieqProcessInputEvents, so
calling it by hand immediately after isn't massively helpful.

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Reviewed-by: Cyril Brulebois <kibi@debian.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-07-01 08:46:27 +10:00
Adam Jackson
7a08f9abef dmx: warning fixes
dmxinputinit.c: In function ‘dmxBlockHandler’:
dmxinputinit.c:610:44: warning: cast from pointer to integer of different size
dmxinputinit.c: In function ‘dmxWakeupHandler’:
dmxinputinit.c:637:41: warning: cast from pointer to integer of different size
dmxinputinit.c: In function ‘dmxInputInit’:
dmxinputinit.c:1041:36: warning: cast to pointer from integer of different size

Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-01-20 21:03:42 -05:00
Adam Jackson
ffd323b7c0 dmx: warning fix
dmxinputinit.c: At top level:
dmxinputinit.c:135:29: warning: ‘DMXCommonOth’ defined but not used

DMXCommonOth is actually mentioned in a #if 0 block, so delete it and
the block that references it.  If anyone needs it, git remembers.

Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-01-20 21:03:35 -05:00
Chase Douglas
65c0fc81eb Add support for per-axis valuator modes (Relative/Absolute)
The XI2 protocol supports per-axis modes, but the server so far does
not. This change adds support in the server.

A complication is the fact that XI1 does not support per-axis modes.
The solution provided here is to set a per-device mode that defines the
mode of at least the first two valuators (X and Y). Note that initializing
the first two axes to a different mode than the device mode will fail.

For XI1 events, any axes following the first two that have the same mode
will be sent to clients, up to the first axis that has a different mode.
Thus, if a device has relative, then absolute, then relative mode axes,
only the first block of relative axes will be sent over XI1.

Since the XI2 protocol supports per-axis modes, all axes are sent to the
client.

Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
2010-10-22 13:37:57 +10:00
Peter Hutterer
0fb7a5c261 input: Purge Register*Device() functions.
RegisterPointerDevice() and RegisterKeyboardDevice() were already mapped to
RegisterOtherDevice() and obsolete.

RegisterOtherDevice() was called for all devices and the two assignments can
simply be moved into AddInputDevice(). Purge RegisterOtherDevice() and
pretend it never happened.

*lalalalala*

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
2010-09-01 15:26:47 +10:00
Mikhail Gusarov
1615836695 dmx: Get rid of xstrdup when argument is definitely non-NULL
ditto for DMX

Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2010-06-11 19:04:23 +07:00
Mikhail Gusarov
0a4d8cbdcd Remove more superfluous if(p) checks around free(p)
This patch has been generated by the following Coccinelle semantic patch:

@@
expression E;
@@

-if(E) { free(E); }
+free(E);

Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Reviewed-by: Fernando Carrijo <fcarrijo@yahoo.com.br>
Reviewed-by: Matt Turner <mattst88@gmail.com>
2010-06-06 20:27:18 +07:00
Jamey Sharp
e7fae9ecc4 Move each screen's root-window pointer into ScreenRec.
Many references to the WindowTable array already had the corresponding
screen pointer handy, which meant they usually looked like
"WindowTable[pScreen->myNum]". Adding a field to ScreenRec instead of
keeping this information in a parallel array simplifies those
expressions, and eliminates a MAXSCREENS-sized array.

Since dix uses this data, a screen private entry isn't appropriate.

xf86-video-dummy currently uses WindowTable, so it needs to be updated
to reflect this change.

Signed-off-by: Jamey Sharp <jamey@minilop.net>
Reviewed-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Tested-by: Tiago Vignatti <tiago.vignatti@nokia.com> (i686 GNU/Linux)
2010-06-03 14:03:23 -07:00
Jamey Sharp
d1bad1b59f dmx: Fix XSetExtensionErrorHandler calls to agree on constness.
Signed-off-by: Jamey Sharp <jamey@minilop.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2010-06-03 14:03:22 -07:00
Jamey Sharp
c97a3ade5a dmx: Delete unused local variables.
Signed-off-by: Jamey Sharp <jamey@minilop.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-05-26 11:16:51 -07:00
Mikhail Gusarov
3f3ff971ec Replace X-allocation functions with their C89 counterparts
The only remaining X-functions used in server are XNF*, the rest is converted to
plain alloc/calloc/realloc/free/strdup.

X* functions are still exported from server and x* macros are still defined in
header file, so both ABI and API are not affected by this change.

Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-05-13 00:22:37 +07:00
Lee Leahu
664a8e37fd dmx: when setting up device axis, use the correct counter number
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-10-20 13:32:19 +10:00
Peter Hutterer
010d5e2865 dmx: remove doxygen-generated files.
These can be recreated by simply running 'doxygen doxygen.conf' in
hw/dmx/doc. Some of the files do not exist anymore, these have been removed.
Some other files have a different naming scheme.
Doxygen warnings about missing links fixed, two warnings remain:

/home/whot/xorg/xserver/hw/dmx/dmxwindow.c:142: Warning: explicit link
request to 'dmxConfigureRootWindow' could not be resolved
/home/whot/xorg/xserver/hw/dmx/dmxwindow.c:119: Warning: explicit link
request to 'dmxConfigureScreenWindow()' could not be resolved

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-10-20 13:32:16 +10:00
Peter Hutterer
88187ad889 dmx: purge DMX EQ leftovers
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-13 10:30:17 +10:00
Peter Hutterer
f3aaa46f27 dmx: formatting fix to improve readability
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-13 10:30:17 +10:00
Peter Hutterer
2d46678762 dmx: remove dmx-internal event queue.
The EQ is in the DIX now.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-13 10:30:16 +10:00
Peter Hutterer
9caba3e2ab dmx: fix two calls to InitKeyboardDeviceStruct.
Takes RMLVO now instead of the keysyms directly.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-13 10:30:15 +10:00
Peter Hutterer
29b9a10dad dmx: XkbComponentNamesRec doesn't have a keymap field anymore.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-13 10:30:15 +10:00
Peter Hutterer
5d81aee5f7 dmx: include xkbsrv.h to silence compiler.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-13 10:30:15 +10:00
Peter Hutterer
9ffc3f280b dmx: don't call InitKbdFeedbackClassDeviceStruct - doesn't exist anymore.
InitKeyboardDeviceStruct does the same task now.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 08:01:28 +10:00
Peter Hutterer
63155cf985 dmx: pass button/axis labels into the init functions (currently unset)
Currently only None labels are passed in, in the future these labels should
be whatever the respective buttions/axes are.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 08:00:08 +10:00
Peter Hutterer
af85973a0a dmx: remove now-useless defines.
XI is mandatory so we can expect both to be defined.
2009-08-05 07:59:45 +10:00
Peter Hutterer
654d7a0260 Revert "dmx: claim we support XI 2."
XQueryInputVersion doesn't exist anymore and for now XI 1 support is good
enough.

This reverts commit 8da8a0fec4.
2009-08-05 07:59:39 +10:00
Peter Hutterer
e7c950c627 dmx: fix a call to XkbSetRulesDflts, takes XkbRMLVOSet now. 2009-08-05 07:59:33 +10:00
Peter Hutterer
2cde9208ff dmx: Enable/DisableDevice take a boolean variable now.
We want to send events here, so pass in TRUE.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 07:59:16 +10:00
Tomas Carnecky
57bed76e21 Remove dead EXTENSION_PROC_ARGS define
Signed-off-by: Tomas Carnecky <tom@dbservice.com>
2009-03-04 10:29:34 -05:00
Daniel Stone
32db27a7f8 Input: Remove modifierMap from core
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-22 15:08:55 +11:00
Daniel Stone
40877c6680 XKB: Make XKB mandatory
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-22 15:06:25 +11:00
Peter Hutterer
874dcdb3bd dmx: remove a ifndef XINPUT, XINPUT is always defined now. 2008-06-05 16:14:29 +09:30
Peter Hutterer
3ff2f3a00e dmx: for now, don't acknowledge SDs. 2008-06-05 16:13:38 +09:30
Peter Hutterer
5bcd9e8953 dmx: learn about the existence of IsXExtensionPointer and IsXExtensionKeyboard 2008-06-05 16:13:23 +09:30
Peter Hutterer
8da8a0fec4 dmx: claim we support XI 2.
We don't really, yet, but at least we get the full device list this way.
2008-06-05 16:13:18 +09:30
Peter Hutterer
d10ba4591a dmx: some more build fixes. 2008-06-05 16:13:03 +09:30
Peter Hutterer
68b4f250ee dmx: fix build.
Just because it builds, doesn't mean it works.
2008-05-14 16:18:48 +09:30
Peter Hutterer
e251c9e75a Remove all traces of #ifdef XINPUT and the matching bits from the configure.ac 2008-04-25 16:49:35 +09:30
Adam Jackson
4d76075dbb Death to RCS tags. 2007-06-29 14:06:52 -04:00
Brian
0f873a9d4f remove some debug code 2007-04-02 14:51:38 -06:00
Brian
0013bf6ddb undo 1280 valuator hack 2007-04-02 12:39:04 -06:00
Brian
73fdc16bc4 formatting fixes 2007-03-30 16:07:26 -06:00
Brian
ebdc8ce5c1 Checkpoint DMX updates: things are working much better now, but still not 100% right.
Use new dmxCoreMotion2() function which enqueues motion events with
GetPointerEvents()/mieqEnqueue().
The clipAxis() code in GetPointerEvents() is causing some grief.  The
limits seem to have always been (0,0) according to the original calls
to InitValuatorAxisStruct() in dmxinputinit.c.
Terrible hack for now: Call InitValuatorAxisStruct() with hard-coded max
values of 1280 (my screen width).
2007-03-30 16:05:46 -06:00
Brian
3c7413e0c2 Tweak some parameters, etc. Things seem a little better now, but still a ways to go. 2007-03-30 14:07:04 -06:00
Brian
1ea842960f more debug 2007-03-30 13:43:15 -06:00
Brian
92e8cdbd32 Checkpoint fixes to DMX for X input changes.
Xdmx builds and runs now.
Keyboard seems OK, and mouse pointer moves, but everything else is flakey.
Something is still seriously wrong.
2007-03-30 13:19:33 -06:00
Daniel Stone
32be08ba72 Remove horrendously ugly DDX backward-compatibility. 2006-06-01 19:22:38 +00:00
Daniel Stone
fd8bde8bb0 Remove -xkbmap argument. 2006-05-29 11:14:03 +00:00
Adam Jackson
d01e0956a8 Coverity #1007: Fix a silly null check. 2006-04-14 23:08:10 +00:00
Kevin E Martin
e348ac4b4d Prepare Xdmx and Xvfb for modularization by adding appropriate #include
<{dix,dmx}-config.h> to the source files.
2005-07-12 00:52:48 +00:00
Daniel Stone
292c4cff26 Fix includes right throughout the Xserver tree:
change "foo.h" to <X11/foo.h> for core headers, e.g. X.h, Xpoll.h;
change "foo.h", "extensions/foo.h" and "X11/foo.h" to
    <X11/extensions/foo.h> for extension headers, e.g. Xv.h;
change "foo.[ch]" to <X11/Xtrans/foo.[ch]> for Xtrans files.
2005-04-20 12:25:48 +00:00
Rik Faith
a5c9b3229c Bugzilla #817 2004-07-07 04:32:52 +00:00
Kevin E Martin
7976ee51af Add Distributed Multihead X (DMX) support 2004-06-30 20:06:56 +00:00