| Commit message (Collapse) | Author | Age |
| |
|
|\
| |
| |
| |
| |
| |
| | |
This resets to before the ad-hoc input hotplug state, ports that to
current server ABI, adds input hotplug integration, and re-adds support
for absolute coordinate events and XKB. Several other small fixes were
cherry-picked from the new 1.2 branch.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Even though we don't have keycodes for anything above 127, make sure our
map always covers up to 255. This ensures that the keycode range never
changes.
Spiritually cherry-picked from a9e87f29ccdadebb0742317bb57d66eaaca4b593
and 6db4a9fb84f828f745202c3fddc58d389fca220b.
|
| |
| |
| |
| |
| |
| |
| |
| | |
There are two major classes here, touchscreens and touchpads. Touchpads
are logically more like relative devices, in that your initial touch
should not warp the cursor. So attempt to detect touchpads (via the
existence of BTN_TOUCH) and translate absolute events from those devices
to relative motion.
|
| |
| |
| |
| | |
It did nothing, and the core won't invoke it anymore anyway.
|
| |
| |
| |
| |
| | |
Almost entirely taken from a patch I did ages ago in bug #3912, with
slight cleanups, and with the KcCGST options removed as per evdev 1.x.
|
| |
| |
| |
| |
| | |
The hotplug core passes Path not Device. With this change, hotplugging
works.
|
| | |
|
| |
| |
| |
| | |
Spiritually cherry-picked from 036b457c1b3f7d2d174da890cb8598d907181f8e
|
| |
| |
| |
| | |
Build evdevModuleData, et al, unconditionally.
|
| | |
|
| | |
|
| |
| |
| |
| | |
Large parts of the manpage were obsolete and confused users. Current state should reflect all available driver options. Some details are still missing.
|
| |
| |
| |
| |
| | |
The message "cannot open input pEvdev" resulted in a lot of bug reports of confused users that did not
supply a device path. Now we tell them when it is missing or print out a reason when device open fails.
|
| |
| |
| |
| |
| |
| | |
xorg-server won't generate soft autorepeat, when interval/delay are at default of 40/660 (see xkb/ddxCtrls.c:
XkbDDXUsesSoftRepeat). When we hit the defaults, we let the kernel autorepeat pass, if we differ, we swallow them all
and let the server figure out autorepeat in software.
|
| |
| |
| |
| | |
Set ctrls->repeat_delay and ctrls->repeat_interval so that keys will be automatically repeated in software.
|
| |
| |
| |
| |
| | |
Not just filter modifiers but every repeated key, because the software implementation will take care of what key to
repeat and what not. Otherwise the kernel's autorepeated keys interfere with the software generated ones.
|
| |
| |
| |
| |
| | |
We do autorepeat in software now. Informing the kernel would change the autorepeat speed on virtual terminals, which is
probably not wanted so we leave the settings untouched.
|
| |
| |
| |
| |
| |
| |
| | |
VMware's absolute pointing device does not have a pressure/touch button.
Although evdev correctly recognizes this, it sets "use_touch" for X and Y axes
regardless of the touch button. This patch clears the USE_TOUCH flag for the X
and Y axes if the device does not have a touch button.
|
| |
| |
| |
| | |
X.Org Bug 13991 <http://bugs.freedesktop.org/show_bug.cgi?id=13991>
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Use \- (ASCII dash) instead of - (hyphen), where appropriate
* Use a roff escape instead of a UTF-8 character.
* Consistent use of quote characters.
* Consistent use of typographic conventions:
italic "n" in place of "<N>" or "integer" or "number",
bold for option names, bit maps, etc.
Debian bug #446118
|
| | |
|
| |
| |
| |
| |
| | |
Take some differently-named options for device and the XKB options. These
should really be better-handled, but eh.
|
| |
| |
| |
| |
| | |
Reported by "A. Costa" <agcosta@gis.net> in
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=432063
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
(Sorta ugly placement wise, but the other segfaults.)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Set and use the X mode control, letting XInput see it properly.
Kill some cruft.
evdev.h:
Set and use the X mode control, letting XInput see it properly.
evdev_axes.c:
Set and use the X mode control, letting XInput see it properly.
evdev_key.c:
Remove some cruft, the bell func can be NULL now, so do so.
Don't bother looking for keys above 0xF7 until we can actually do
something with them.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
(Old configs don't.)
evdev.c:
Add EvdevParseMapToButton and EvdevParseMapToButtons to evdev_map_parsers.
Add EvdevParseMapOption to search through evdev_map_parsers.
Fix up EvdevTokenize to handle the evdev_option_token_t changes.
EvdevAxesNew0 after BtnNew0 instead of before now.
(This isn't the right fix.)
evdev.h:
EVDEV_MAXBUTTONS -> BTN_MAX.
Redid evdevBtnRec with the new mapping goodness.
Removed v_min and v_max from evdevAbsRec.
Reworked evdev_option_token_t, no union, no is_chain.
If it's a chain, it still has a string, but the chain pointer is set.
EvdevParseMapToButton, EvdevParseMapToButtons, and EvdevParseMapOption.
evdev_axes.c:
Kill off EvdevAxesMapButton, a variant lives in evdev_btn.c now.
Changes for the evdev_option_token_t changes.
Use EvdevParseMapOption instead of repeating the contents twice.
Disable EV_ABS_V_INVERT for the moment. (Better fix maybe needed.)
evdev_btn.c:
s/Ptr /Rec */g
EvdevMapButton and parser.
EvdevMapButtons and parser.
Nuke EvdevBtnCalcRemap as a whole.
Move everything but the alloc to New1 from New0.
New mapping code, same guts os the axes mapping code even.
|
| |
| |
| |
| |
| |
| | |
Make buttons mostly work again. (Short term fix.)
NOTE: Wheel to button remapping is still missing!
|
| |
| |
| |
| | |
Finish merging copyright notices. (evdev_key.c was missed.)
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
git+ssh://git.freedesktop.org/git/xorg/driver/xf86-input-evdev
Conflicts:
src/evdev.h
|
| | | |
|
| | | |
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
evdev.h:
Switch to flags in the abs and rel structs.
Add the axes struct, and defines.
Rework the abs and rel structs, moving stuff to the axes struct and moving
everything to the new mapping handling.
Add the structs and function declarations for the new tokenization stuff,
parsing stuff, and mapping stuff.
evdev.c: Add EvdevTokenize, and the evdev_map_parsers list.
evdev_axes.c:
Basicly a full rewrite, big, messy.
We now use a completely different mapping setup for axes, and mapping to
buttons is currently missing.
However we now handle ABS_CALIB and ABS_AREA, including rotation in both
rel and abs modes.
evdev_btn.c:
Disable lots of code and break things horribly, we compile but we don't
work very well.
Fixing this is next on my todo list.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
NOTE: Someone needs to check for memory leaks, I'd be willing to bet
a fair bit that we've got tons in the mouse and xkb code, but.
|
| |
| |
| |
| |
| |
| | |
Fix the crash on device unplug.
NOTE: We still don't properly get rid of ourselves.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Remove the non-functional 2.4 kernel compiling compatibility.
Remove the XInput 1.4+ SendCoreEvents/DontSendCoreEvents define replacements.
Remove evdevDriver, some stuff from evdevDevice, all users.
NOTE: This WILL BREAK all existing configurations.
NOTE: Device read failure segfaults, don't unplug stuff.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This branch is the great xserver input-hotplug rewrite, consider it unstable
but usable with the 'current' (as of this commit) git xserver.
(Once it's more done that is.)
NOTE: This branch will _not_ remain source or binary compatable with
pre-input-hotplug xservers, you have been warned.
|
| |
| |
| |
| |
| | |
This effectively stops the driver from hotplugging new devices. Devices have
to be added with the dbus hotplugging events.
|
| | |
|
| | |
|