evdev: keyboard or mouse?

Sebastian Glita glseba at yahoo.com
Wed Dec 3 07:59:49 PST 2008


xinput --reattach did the trick.
I didn't see the messages "configure as mouse/keyboard/..." as *additive*, so I thought only one must occur.
But can one "filter" the device so that it is exactly and only a pointer? Or the reverse?
Ι rewrote a little EvdevProbe's find/configure chain. (including the last has_scroll commit)
First it goes "dry-run" to detect what can be configured.
If option UseAsPointing is true (can only be from user), it tries to
disregard, in the following, the keys, unless UseAsKeyboard is true as
The same holds for option UseAsKeyboard.
If they are not specified, then there is a normal behavior, covering
any capability and naming as keyboard (so KEYBOARD is sort of like KEYPANEL).
Then it configures what was totally discovered, excluding the what
specifically was *not* requested. It's a simple
auto-include&user-exclude mechanism.
The code is also somehow clearer of what it does, separating the stages: you can easily track the *additive* style in the end.
It is of course redundant. But it answers the intuitive shallow
question regarding these situations. For me, I want to UseAsPointing
I made a diff for the evdev.c file.

-        int is_ptr = as_mouse || as_touchpad || as_touchscreen || has_scroll;
+        int is_ptr = as_mouse || as_touchpad || as_touchscreen;

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: evdev.diff
URL: <http://lists.x.org/archives/xorg/attachments/20081203/50527a93/attachment.ksh>

More information about the xorg mailing list