Peter Hutterer [Wed, 6 Feb 2019 04:12:56 +0000 (14:12 +1000)]
pad: rename the include guard
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 6 Feb 2019 04:07:37 +0000 (14:07 +1000)]
filter: drop an unused function and an unused struct
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Tue, 5 Feb 2019 23:05:48 +0000 (09:05 +1000)]
fallback: fix a comment typo
Peter Hutterer [Wed, 16 Jan 2019 00:05:59 +0000 (10:05 +1000)]
quirks: add a quirk to ignore unreliable tablet mode switch devices
On the Asus Vivobook Flip 14, the tablet mode switch is unreliable and always
on. Instead of marking every device as 'do not suspend', just mark the tablet
switch itself.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Benjamin Poirier [Fri, 4 Jan 2019 07:20:48 +0000 (16:20 +0900)]
evdev: Rename some debouncing functions for consistency
All other similar functions are named with the "_handle_event" postfix.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Sun, 3 Feb 2019 23:56:45 +0000 (09:56 +1000)]
test: up the ratelimit tests to 1000ms
This fails too often on the gitlab runners, so let's expand the times.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Jan Beich [Sun, 3 Feb 2019 09:27:33 +0000 (09:27 +0000)]
meson.build: gnu90 alias for gnu89 may not be supported
cc1: error: unrecognized command line option "-std=gnu90"
Peter Hutterer [Fri, 28 Sep 2018 01:47:32 +0000 (11:47 +1000)]
tablet: add tilt-based touch arbitration for screen tablets
If the tilt angle on tip down is not 0 set the touch arbitration to a
rectangle around the assumed position of the hand. This assumed position is
right of the tip for a rightwards tilt and left of the tip for a leftwards
tilt (i.e. left-handed mode). The rectangle is 200x200mm with a 20x50mm
NW of the tip or NE for left-handed. In other words, if the period below is
the tip, the rectangle looks like this:
+-----------+ +-----------+
| . | <- for rightwards tilt | . |
| | | |
| | | |
| | for leftwards tilt -> | |
+-----------+ +-----------+
Touches within that rectangle are canceled, new touches are ignored. As the
tip moves around the rectangle is updated but touches are only cancelled on
the original tip down. While the tip is down, new touches are ignored in the
exclusion area but pre-existing touches are not cancelled.
This is currently only implemented in the fallback interface, i.e. it will
only work for Cintiqs.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 19 Sep 2018 02:02:51 +0000 (12:02 +1000)]
evdev: add a rectangle to the touch arbitration
This enables us to specify the location that needs to be arbitrated, rather
than just disabling the whole device altogether. This patch just adds the
hooks, no implementation.
This is internal API only, one backend can specify an area in mm which gets
converted to device coordinates in the target device and arbitrated there.
Right now, everything simply passes NULL.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 28 Sep 2018 04:10:48 +0000 (14:10 +1000)]
fallback: force the palm state to PALM_NONE on touch begin
If we don't have tool-based palm detection, make sure our touch is labelled as
"not palm" during touch down. Otherwise that slot remains on palm forever if
it gets tagged as palm through some other means.
This currently has no effect, nothing in the code would label the touch as
palm. This is prep work for better touch arbitration.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 19 Sep 2018 02:02:51 +0000 (12:02 +1000)]
evdev: introduce a touch arbitration enum
This enables us to change the types of touch arbitration, with the focus on
allowing location-based touch arbitration as well as the more generic "disable
everything".
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Tue, 8 Jan 2019 05:37:52 +0000 (15:37 +1000)]
test: add a LITEST_DIRECT feature for the wacom cintiqs
Currently unused, but will be used in later patches
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Sun, 6 Jan 2019 22:27:22 +0000 (08:27 +1000)]
fallback: add timer-based touch arbitration
When a hand is resting on a pen+touch device, lifting the hand may remove the
stylus from proximity before the hand leaves the surface. If the kernel
performs touch arbitration, this triggers a touch down on proximity out,
followed by a touch up immediately after when the hand stops touching.
This can cause ghost touch events. Prevent this by using a timer-based
arbitration toggle.
Same as
2a378beab032d742770e24a6822378faa90cf1f6 but for the fallback
interface.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 31 Jan 2019 01:09:53 +0000 (11:09 +1000)]
touchpad: release all button presses on device suspend
This leaves a bug open, on a Lenovo T440 generation touchpad with top software
buttons, the button will not be leased correctly. This is caused by
device->is_suspended=true by the time we try to clear the state and the
button events thus getting filtered.
This used to affect all touchpads, this patch just moves it so it only affects
the T440-like devices now.
Fixes #233
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 31 Jan 2019 01:55:55 +0000 (11:55 +1000)]
test: add a test for normal touchpad button presses
Probably covered elsewhere in a more generic test anyway but let's have one we
know is executed for all touchpads.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 30 Jan 2019 23:02:58 +0000 (09:02 +1000)]
evdev: cancel the middle button timer on device removed
If a middle-button-emulating device is removed with one button down, the timer
never gets cancelled and triggers an assert during device removal.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 30 Jan 2019 04:26:31 +0000 (14:26 +1000)]
test: add an additional final libinput_dispatch()
After the test device was removed, run one more libinput_dispatch(). This may
catch some errors that happen due to the device removal that were ignored for
now.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 30 Jan 2019 04:10:28 +0000 (14:10 +1000)]
fallback: when force-releasing keys, release them directly
An emulated button is recorded as BTN_MIDDLE in the key down mask. If the
device is removed in that state, the BTN_MIDDLE event processed triggers
an assertion when we try to send out the event twice.
Fixes #201
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 30 Jan 2019 02:00:47 +0000 (12:00 +1000)]
evdev: cancel the button scroll timer on device removed
If a device was removed while a button was held down and within the timeout,
the timer was never cancelled (and removed from the timer list), triggering an
assert during device removal.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 30 Jan 2019 09:37:48 +0000 (19:37 +1000)]
meson.build: replace manual checks with cc.has_function()
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 30 Jan 2019 23:46:51 +0000 (09:46 +1000)]
meson.build: bump to 1.12.900
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Furkan Tokac [Sun, 23 Dec 2018 23:52:42 +0000 (01:52 +0200)]
test: Missing test cases for palm detection based on touch size
Missing tests are written.
Peter Hutterer [Fri, 18 Jan 2019 01:57:55 +0000 (11:57 +1000)]
quirks: enforce uppercase hex numbers
No specific reason other than consistency.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 4 Jan 2019 05:09:37 +0000 (15:09 +1000)]
test: run the 'keep ignoring' arbitration tests on the cintiqs as well
Not 100% why this one was only run on the intuos, but I suspect by accident.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 4 Jan 2019 04:58:52 +0000 (14:58 +1000)]
test: automate the tablet pairing for the arbitration tests
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 4 Jan 2019 04:44:38 +0000 (14:44 +1000)]
test: store the device type in the test device struct
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 4 Jan 2019 04:21:38 +0000 (14:21 +1000)]
test: fetch the is-touchpad in arbitration tests from a input property
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 4 Jan 2019 05:10:20 +0000 (15:10 +1000)]
test: don't enable tapping for the touch arbitration test
Looks like a copy/paste error.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 4 Jan 2019 05:27:02 +0000 (15:27 +1000)]
test: clarify a confusing comment
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Konstantin Kharlamov [Fri, 11 Jan 2019 23:15:20 +0000 (02:15 +0300)]
evdev: don't execute snprintf if not gonna print
Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
Konstantin Kharlamov [Fri, 11 Jan 2019 22:57:08 +0000 (01:57 +0300)]
evdev: inline evdev_log_msg_va
Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
Peter Hutterer [Thu, 17 Jan 2019 00:45:18 +0000 (10:45 +1000)]
doc: add missing @ref
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 17 Jan 2019 00:44:47 +0000 (10:44 +1000)]
doc: correct a slightly ambiguous @ref wording
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 17 Jan 2019 00:00:30 +0000 (10:00 +1000)]
tools: document show-keycodes option for libinput-record
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Tue, 15 Jan 2019 23:37:10 +0000 (09:37 +1000)]
doc/user: fix a leftover html tag
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Tue, 15 Jan 2019 23:32:46 +0000 (09:32 +1000)]
Update gitlab templates for label renames
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Seiderer [Sat, 12 Jan 2019 10:10:46 +0000 (11:10 +0100)]
meson.build: enable CPP include check only in case CPP compiler is available
Drop hard meson C++/CPP dependency, only needed for the build-time
header inclusion test, build the test only in case C++/CPP compiler
is available.
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Christoffer Holmstedt [Sun, 13 Jan 2019 09:37:04 +0000 (10:37 +0100)]
quirks: add ModelBouncingKeys for Contour RollerMouse
The Contour RollerMouse have a button for "double click" which emulates
a double click. The two clicks are so close together that with libinput
heuristics it looks like a worn-out button and triggers debouncing
functionality.
This commit adds support for the RollerMouse Free 2 and RollerMouse
Re:d.
Fixes libinput/libinput#204
Nathaniel Roach [Tue, 8 Jan 2019 02:24:16 +0000 (02:24 +0000)]
quirks: don't disable keyboard device for Acer Spin 5 when in tablet mode
As with some other convertible devices, the keyboard is disabled by the system when the device is in tablet mode.
The volume control keys on the side of the unit are not, but still appear from the keyboard to the system.
Don't disable the keyboard when in tablet mode.
Tested working.
Peter Hutterer [Fri, 4 Jan 2019 02:35:22 +0000 (12:35 +1000)]
test: add test devices for the Cintiq Pro 16
Reconstructed from the HID descriptors here:
https://github.com/linuxwacom/wacom-hid-descriptors/tree/master/Wacom Cintiq Pro 16/
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 4 Jan 2019 02:37:23 +0000 (12:37 +1000)]
include: update input-event-codes.h to v4.19
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Thomas Sailer [Thu, 3 Jan 2019 01:22:21 +0000 (02:22 +0100)]
ModelTabletModeNoSuspend=1 is currently only honored for keyboards, but not touchpads. This commit changes that.
Peter Hutterer [Wed, 2 Jan 2019 04:59:03 +0000 (14:59 +1000)]
doc: fix doxygen references for libinput_get_user_data
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Thomas Sailer [Wed, 2 Jan 2019 23:19:32 +0000 (00:19 +0100)]
Asus VivoBook Flip 14 TP412UA tablet mode switch misbehaving
Peter Hutterer [Thu, 20 Dec 2018 04:48:52 +0000 (14:48 +1000)]
tools: libinput-record: record the hid report descriptor where available
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 20 Dec 2018 01:43:34 +0000 (11:43 +1000)]
tools: measure-fuzz: slightly expand the help
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 20 Dec 2018 01:41:37 +0000 (11:41 +1000)]
tools: measure-fuzz: fix a typo
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 20 Dec 2018 01:36:18 +0000 (11:36 +1000)]
tools: measure-fuzz: downgrade the fuzz mismatch error to just a warning
Related to #199
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 20 Dec 2018 01:09:59 +0000 (11:09 +1000)]
tools: measure-fuzz: fix exception printing
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/x86_64-linux-gnu/libinput/libinput-measure-fuzz", line 464, in <module>
main(sys.argv)
File "/usr/lib/x86_64-linux-gnu/libinput/libinput-measure-fuzz", line 458, in main
print('Error: {}'.format(e.message))
AttributeError: 'InvalidConfigurationError' object has no attribute 'message'
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>:
makepost [Sat, 22 Dec 2018 17:51:21 +0000 (19:51 +0200)]
util: fall back to strtod if no locale in libc
uClibc-ng has experimental locale support but it's incomplete and
disabled by default, for example in Hardened Gentoo.
Fixes #63
makepost [Sat, 22 Dec 2018 17:40:46 +0000 (19:40 +0200)]
README: update documentation links
Got 404s and placeholders saying that pages have moved.
Peter Hutterer [Wed, 28 Nov 2018 23:15:52 +0000 (09:15 +1000)]
tools: don't apply config options on device removed
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Tue, 18 Dec 2018 22:46:24 +0000 (08:46 +1000)]
filter: fix typo in comment
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Josh Holland [Sat, 15 Dec 2018 13:57:29 +0000 (13:57 +0000)]
Fix typos in README.md
Peter Hutterer [Thu, 13 Dec 2018 02:06:53 +0000 (12:06 +1000)]
quirks: add a quirk for the Lenovo T480s clickpad
It's missing INPUT_PROP_BUTTONPAD but working kernel drivers prove to be
elusive. Meanwhile, add a quirk here that force-enables this bit.
Fixes #177
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Tue, 11 Dec 2018 02:37:40 +0000 (12:37 +1000)]
Drop explicit version requirement for libevdev
The minimum version of libevdev we require is so old that we really don't need
an explicity requirement here anymore.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Tue, 4 Dec 2018 06:44:57 +0000 (16:44 +1000)]
gitlab CI: switch Ubuntu 17.10 to test 18.10 instead
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Tue, 4 Dec 2018 06:44:16 +0000 (16:44 +1000)]
gitlab CI: fix ubuntu version for 18.04
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Benjamin Tissoires [Mon, 26 Nov 2018 12:01:28 +0000 (13:01 +0100)]
GitLab CI: Fix clean up stage
we need to get the authorization token with the gitlab address, not
the registry.
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
Benjamin Tissoires [Mon, 26 Nov 2018 11:09:57 +0000 (12:09 +0100)]
GitLab CI: use extends to simplify declaration of jobs
The build stage gets simpler:
- we define one high level build job
- for each type of distro, we subclass the high-level job with the
distribution image
- then we subclass the previous jobs into specific release versions
or specific items to check
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
Benjamin Tissoires [Fri, 2 Nov 2018 10:44:45 +0000 (11:44 +0100)]
GitLab CI: use buildah/podman instead of docker
well, docker has licensing issues, and the version shipped in
Fedora is getting quite old now.
We have a free open source alternative through buildah/podman/skopeo.
Build our building image in the CI too, so updates can
be achieved by just triggering the bootstrap job.
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
Benjamin Tissoires [Mon, 26 Nov 2018 10:49:50 +0000 (11:49 +0100)]
GitLab CI: replace occurrences of docker by container
We want to move away from docker, so let's not reference docker everywhere
when we can use a generic term
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
Thomas Profitt [Tue, 27 Nov 2018 22:14:07 +0000 (16:14 -0600)]
quirks: Adjust MacBookPro11,2 touchpad PalmSize
The touchpad is 104mmx75mm, but an AttrPalmSizeThreshold of 800 is too
aggressive, and even relatively-small fingers and thumbs register as
palms sporadically, stopping the mouse until you lift your hand and try again.
1600 was chosen because it's the point at which my fingers and thumbs,
held at a very low angle, stop registering as palms, so it should
acommodate bigger fingers.
I don't know if the [Apple Touchpads USB] default of 800 needs to be
updated too, or if it's a quirk of this particular touchpad.
Peter Hutterer [Sun, 25 Nov 2018 22:29:47 +0000 (08:29 +1000)]
doc/user: bugzilla → gitlab issue
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Arick McNiel-Cho [Fri, 23 Nov 2018 21:10:15 +0000 (15:10 -0600)]
Added quirk for HP Spectre x360 Convertable 15-bl1xx touchpad.
Peter Hutterer [Fri, 9 Nov 2018 00:10:58 +0000 (10:10 +1000)]
meson: increase timeout for the option parsing test
I've had runs with up to 50s, so let's cap it at 2 minutes.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 7 Nov 2018 01:05:05 +0000 (11:05 +1000)]
tools: draw evdev events in the debug-gui
Listen to the pure evdev events from each device and print them. This makes it
slightly easier to associate certain jumps with the output, or otherwise see
that events are coming in even when libinput doesn't seem to process them
anymore.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 31 Oct 2018 05:52:25 +0000 (15:52 +1000)]
tools: let debug-events take a device path
This is the most common use-case other than "all from udev", so let's just
parse a device path correctly without requiring --device.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 31 Oct 2018 23:16:03 +0000 (09:16 +1000)]
tools: add a test for tool option parsing
We don't check for correctness in the output as such, just that whatever
combination of cmdline arguments still works/doesn't work. This is the
scaffolding and a few tests, but needs to be filled in, especially for
libinput measure and for some more complex combinations.
valgrind: requires one more python-related suppression
gitlab-ci: requires another environment variable so we know to skip the
--device tests (udev will time out on those)
meson: skip the test run in release builds, we pass the full path to the built
libinput tool but rely on the subtool lookup that won't work in a
release build
Fixes #174
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 31 Oct 2018 23:39:49 +0000 (09:39 +1000)]
tools: make the tools exit with exit code 2 on usage issues
This makes it easier to test for usage issues
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 1 Nov 2018 06:42:27 +0000 (16:42 +1000)]
tools: debug-events: install the signal handler before any libinput operations
On a CI container, we will time out trying to find the udev device for our
device node. This takes 2s, a SIGINT during this time should be treated the
same as one during the mainloop.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 1 Nov 2018 03:56:16 +0000 (13:56 +1000)]
tools: handle sigint in debug-gui
Exit with success on SIGINT
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 1 Nov 2018 06:19:20 +0000 (16:19 +1000)]
path: don't leak the udev device on failure
If by sheer coincidence the device succeeds on the last try, we'd have a
leaking udev device.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 7 Nov 2018 03:51:37 +0000 (13:51 +1000)]
libinput 1.12.3
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Tue, 30 Oct 2018 23:55:17 +0000 (09:55 +1000)]
tools: allow measuring single-touch ABS_PRESSURE
Fixes #173
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Mon, 5 Nov 2018 04:22:46 +0000 (14:22 +1000)]
test: fix a clang warning
test/test-misc.c:1065:28: warning: Value stored to 't' during its
initialization is never read
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Mon, 5 Nov 2018 04:12:00 +0000 (14:12 +1000)]
tools: drop a superfluous linebreak in the list-quirks output
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Mon, 5 Nov 2018 03:52:41 +0000 (13:52 +1000)]
tools: handle the EventCodeDisable quirk in the quirks tool
This caused an assertion
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 2 Nov 2018 02:24:55 +0000 (12:24 +1000)]
Gitlab CI: use the docker:stable image for image creation
alpine:latest which is now the default image doesn't docker installed by
default. apk add docker results in failures
Warning: failed to get default registry endpoint from daemon
last time all this worked was when we defaulted to the docker:stable image,
see https://gitlab.freedesktop.org/libinput/libinput/-/jobs/8316
Let's switch back to that and move on with our lives.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 2 Nov 2018 02:03:27 +0000 (12:03 +1000)]
gitlab CI: buildah requires the transport protocol
Executing the script as illustrated sends it to nowhere (localhost maybe?),
prepending docker:// makes it recognize the hostname correctly and actually
upload it to gitlab.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 2 Nov 2018 00:20:53 +0000 (10:20 +1000)]
gitlab CI: swap Fedora 27 for Fedora 29
And run all the special stuff we currently run on F28 on F29
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Ryan Walklin [Thu, 1 Nov 2018 17:42:45 +0000 (17:42 +0000)]
Don't disable keyboard for Lenovo X230 Tablet in tablet mode
This also disables the special buttons on the tablet screen. Re-enabling to allow screen rotation.
Peter Hutterer [Fri, 19 Oct 2018 05:27:20 +0000 (15:27 +1000)]
quirks: switch a few model quirks over to use the new evcode disabling
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 19 Oct 2018 02:17:03 +0000 (12:17 +1000)]
quirks: add the ability to disable custom event codes/types
This is a more flexible approach than adding a model flag and the C code to
just call libevdev_disable_event_code(). There's a risk users will think this
is is a configuration API but there are some devices out there (e.g. the
Microsoft Sculpt mouse) that need a more generic solution.
Case in point: the Sculpt mouse insists on holding BTN_SIDE down at all times.
We cannot ship any quirks for that device because we only have the receiver's
generic VID/PID. So a local override is required, but we might as well make
that one generic enough to catch other devices too in the future.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Mon, 29 Oct 2018 03:42:19 +0000 (13:42 +1000)]
evdev: log the wheel click angle setting
Log if we use a non-default click angle setting, makes it easier to debug
this. The condition to add the log was a bit unwieldly to read, so this also
factors out the property names to temporary variables.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 24 Oct 2018 05:23:37 +0000 (15:23 +1000)]
libinput 1.12.2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Fri, 19 Oct 2018 01:25:42 +0000 (11:25 +1000)]
test: move the custom parser test structs into the functions
No need to pollute the namespace here.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Tue, 16 Oct 2018 05:37:22 +0000 (15:37 +1000)]
Remove obsolete HAVE_CONFIG_H check
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 11 Oct 2018 00:21:54 +0000 (10:21 +1000)]
quirks: disable debouncing on the VMware Virtual mice
At least on MacBooks, the host emulates two clicks 8ms apart in response to a
doubletap. Those clicks are filtered by our debouncing code.
Since these are emulated devices anyway and by definition cannot have a stuck
button, let's tag them so we don't enable the debouncing code. If the button
of the physical device is stuck, that's a problem that needs to be fixed in
the host system.
Fixes #158
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Michał Kopeć [Thu, 18 Oct 2018 20:08:28 +0000 (22:08 +0200)]
quirks: don't disable keyboard for Lenovo X60 Tablet in tablet mode
Lenovo X60 tablet has bezel buttons that are bound to the keyboard.
They should not be disabled.
Greg V [Sun, 14 Oct 2018 12:15:15 +0000 (15:15 +0300)]
quirks: use basename in a POSIX compliant way
The POSIX version of basename modifies the string (and therefore crashes
on static strings), so use safe_strdup before calling it.
glibc provides a POSIX version when libgen.h is included.
FreeBSD 12 provides a POSIX version when nothing is included, which was
causing a segfault.
Using the POSIX version correctly is the right way to avoid any such issues.
Peter Hutterer [Tue, 9 Oct 2018 01:07:02 +0000 (11:07 +1000)]
test: add tablet-mode suspend/resume keyboard and touchpad tests
Related #155
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Mon, 15 Oct 2018 04:45:06 +0000 (14:45 +1000)]
touchpad: handle a touch ending and restarting in the same frame
If a touch ends and starts again in the same frame, our touch count gets out
of whack. This later triggers an assertion when the tap touch count mismatches
the real tap count.
E: 0.105005 0003 0039 -001 # EV_ABS / ABS_MT_TRACKING_ID -1
E: 0.105005 0003 0035 8447 # EV_ABS / ABS_MT_POSITION_X 8447
E: 0.105005 0003 0036 4479 # EV_ABS / ABS_MT_POSITION_Y 4479
E: 0.105005 0001 014a 0000 # EV_KEY / BTN_TOUCH 0
E: 0.105005 0001 0145 0000 # EV_KEY / BTN_TOOL_FINGER 0
E: 0.105005 0003 0039 0074 # EV_ABS / ABS_MT_TRACKING_ID 74
E: 0.105005 0003 0035 8388 # EV_ABS / ABS_MT_POSITION_X 8388
E: 0.105005 0003 0036 4480 # EV_ABS / ABS_MT_POSITION_Y 4480
E: 0.105005 0001 014a 0001 # EV_KEY / BTN_TOUCH 1
E: 0.105005 0001 0145 0001 # EV_KEY / BTN_TOOL_FINGER 1
E: 0.105005 0003 0000 8388 # EV_ABS / ABS_X 8388
E: 0.105005 0003 0001 4480 # EV_ABS / ABS_Y 4480
E: 0.105005 0000 0000 0000 # ------------ SYN_REPORT (0) ---------- +19ms
This is a kernel bug but let's paper over here because otherwise we crash and
that's considered impolite.
Fixes #161
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Mon, 15 Oct 2018 03:47:29 +0000 (13:47 +1000)]
touchpad: only log the touch state if we have something to log
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 10 Oct 2018 06:24:36 +0000 (16:24 +1000)]
quirks: fix palm size threshold for the Wacom PTH660
Copy/paste error in the hwdb to quirks transition
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Matthias Mayr [Mon, 8 Oct 2018 21:21:36 +0000 (23:21 +0200)]
quirks: suppress tablet-mode for Lenovo X220T keyboard. Resolves #154
The special bezel buttons are associated to the keyboard and would
therefore mistakenly be deactivated as well. See #154.
Peter Hutterer [Wed, 3 Oct 2018 22:34:33 +0000 (08:34 +1000)]
touchpad: avoid motion events when moving one finger into AREA
If a 2fg scroll motion starts with both fingers in the bottom button area and
one finger moves into the main area before the other, we used to send motion
events for that finger. Once the second finger moved into the main area the
scroll was detected correctly but by then the cursor may have moved out of the
intended focus area.
We have two transitions where we may start sending motion events: when we move
out of the bottom area and when the finger moves by more than 5mm within the
button area. In both cases, check for any touches that are in the
bottom area and started at the 'same' time as our moving touch. Mark those as
'moved' to release them for gestures so we get the right finger count and
axis/gesture events instead of just motion events.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Thu, 4 Oct 2018 00:30:26 +0000 (10:30 +1000)]
touchpad: don't calculate movement for an already-moved touch
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 3 Oct 2018 22:32:37 +0000 (08:32 +1000)]
touchpad: align the button state log messages
There's one state with a name longer than allocated but it's virtually never
triggered so let's just ignore the misalignment in that case.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer [Wed, 3 Oct 2018 04:19:11 +0000 (14:19 +1000)]
touchpad: if two fingers are within the lower thumb area, they're not thumbs
The shape of the average hand implies that two fingers down within the lower
thumb area (the bottom few mm of the touchpad) cannot be thumbs without
significant contortion. So let's not mark them as thumb.
Fixes #126
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>