Age | Commit message (Collapse) | Author |
|
Messages of type X_NONE are just passed down to the log files, everything else
gets the (EE) or (II) prefixed. Since this mallocs, we can't use it in the
signal handler.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 220e2dfb8f6aa08bd5f59e81c6883c057b945721)
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit ddc126637404cb3d9356b7698779dcd8849f8718)
|
|
Red Hat Bug 494245 <https://bugzilla.redhat.com/show_bug.cgi?id=494245>
Reported-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 98ecb5233bb3b899bd696a90d2733c6a345676dd)
|
|
Remember whether ABS_X or ABS_Y were reported before the SYN event and only
update the old_vals[0, 1] if we got data for them.
Touchpads that reported pressure data before x/y would otherwise update
old_x/y with bogus values, leading to jumps when the first x/y coordinates
were actually reported.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit d9809d7edd2be714a15115b990286554e2979fb6)
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit b11439a1763b5f210460b492dd4f47e973f90a3a)
|
|
don't use uninitialized axis_map entries, ie axis_map[ABS_PRESSURE]
Signed-off-by: Jeremy Jay <dinkumator@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 740dc202f735106532dce581deabe2b95c52759f)
|
|
Touchpads have pressure or touch and also BTN_TOOL_FINGER.
Touchscreens have either pressure or touch, but no finger.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 7ac0c4456dc0846f7e09f334a26f9536e20065df)
|
|
We unset "abs" and convert to relative, but never set "rel" so the events
don't get posted. This bit got broken in 43dd2a959243877.
X.Org Bug 20661 <http://bugs.freedesktop.org/show_bug.cgi?id=20661>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit a3ea979c2b70d166d62422b4ba450ce2910389c3)
|
|
Letting the server deal with key repeats is fine if we have server 1.6. For
earlier servers, we need to pass on the repeat events (except for modifier
keys).
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Tested-by: Marty Jack <martyj19@comcast.net>
(cherry picked from commit a7fb654a68a26ad5f019a902312c6b94dbe9c3ea)
|
|
The server doesn't like NULL names, so don't call XIGetKnownProperty for
labels that don't exist.
X.Org Bug 20524 <http://bugs.freedesktop.org/show_bug.cgi?id=20524>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Tested-by: Peter Henriksson
|
|
Reported by Simon Thum.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Simon Thum <simon.thum@gmx.de>
|
|
Buttons 4/5 and 6/7 are hardcoded for wheel buttons.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
All labels default to unknown anyway.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Scrollwheel data is always posted as buttons, so we need to advertise at least
enough buttons to accommodate for 6/7 (horizontal wheel).
Note that this may mean that if you have a device that has scroll wheels and
axes, but no buttons, it may be interpreted as a mouse.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
We don't post the events for them anyway, so lets ignore them completely.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
9620fe776 added generic axes support for relativ values, but values from such
axes didn't get passed on to the server. Fix this.
Note that wheel events are not posted as motion events.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
|
xf86WaitForInput() would call select() with zero timeout to discover if
more input was ready. But we know that's always true at least once,
since we're only ever called from the sigio handler (if silken is
active) or from the main loop (if it's not and we selected readable).
With nonblocking IO we can just spin around until we hit EAGAIN, which
gets us down to n+1 syscalls per event instead of 2n.
|
|
Server 1.6 has device properties, but not axis labels.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
abs_labels[] has to be aligned with the defines in linux/input.h, but the
latter does not have continuous range. Pad the holes with
AXIS_LABEL_PROP_ABS_MISC.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Just query the kernel what axes we actually have, rather than hard-coding x/y.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
If we swap before scaling, we scale with the wrong coordinate range.
Reported by Matt Helsley.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Saves a few duplicate ioctls.
Suggested by Matt Helsley.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Instead of x/y and pressure, support any absolute axis that is reported on the
device. Note that there are still locations that special-case X and Y.
Minor modifications by Peter Hutterer.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
The motion history buffer is allocated during InitValuatorClassDeviceStruct
anyway.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
As can be seen in e.g. bugs 19819 & 20025, it can be unclear what
exactly caused a given "Device has changed - disabled" error. This
patch adds some more specific messages to give a better clue on what
exactly was seen to have changed.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Remove non toplevel .gitignore and .cvsignore files.
The "make distcheck correction" for $(sdkdir) probably has a better
approach using a "*-hook:" target, or possibly making $sdkdir a
configure time option that could be set with DISTCHECK_CONFIGURE_FLAGS.
|
|
Input devices (especially touchscreens) were disabled when switching
virtual console back to X because EvdevCacheCompare() thought the device
was substituted by another while away from X. Actually only the current
position reported by the device changed from what was in the cache. Fixed
by ignoring the current position in the comparison.
Fixes bug #19819.
Signed-off-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
With the new InitKeyboardDeviceStruct, we can just pass the RMLVO we
want without setting the defaults first.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
|
|
We don't need axis calibration, etc. on keyboards, so let's do it
conditionally on actually having axes.
Reported by Simon Thum.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Some XKB stuff has been removed, so let's deal with it.
|
|
Welcome to the future.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Since we don't support anything but REL/ABS x/y and sometimes pressure this is
bordering on pointlessness, but once the year of the Linux desktop comes
around this will be really handy. Or so.
Also, we don't allow changing axis labels, but should eventually rearrange
them if swapaxis is on.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
xf86SetStrOption already prints with X_CONFIG anyway, no need to do it again.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Otherwise, we add a new property based on a setting in pEvdev, which triggers
the update handler to change the setting in pEvdev based on the property.
Truly pointless.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
In linux/input.h each section's (e.g. ABS) FOO_MAX is the maximum FOO
value. Recent kernels define FOO_CNT as the maximum number of FOO there
will ever be. Hence using FOO_MAX to size the bit vectors representing
the capabilities of an evdev device is off by one.
Define FOO_CNT values for use with Linux kernels which lack them. Use
FOO_CNT whenever we need to know the number of bits needed -- usually to
calculate the number of longs needed.
When iterating over the values FOO_MAX still seems appropriate however
the loop test should include FOO_MAX rather than skip it.
Signed-off-by: Matt Helsley <matt.helsley@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
NBITS really convers the number of bits passed as its argument
into a number of longs. This is somewhat atypical of many
function-like-macro names. Rename it to NLONGS.
Signed-off-by: Matt Helsley <matt.helsley@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
If it's available report pressure as third valuator.
(Use xf86PostMotionEventP instead of the varargs wrapper.)
Signed-off-by: Matt Helsley <matt.helsley@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Yan Li <yan.i.li@intel.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|