summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2021-04-30libinput 1.17.21.17.2Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-04-29quirks: add quirk for Lenovo Yoga Slim 9 TouchpadUdo Rader1-0/+9
This touchpad is a pressure pad and needs the pressure handling disabled. Fixes #604 Signed-off-by: Udo Rader <udo.rader@bestsolution.at> (cherry picked from commit 144f5ed93dc70873ee7d07b0acc00d1fe5560ead)
2021-04-29quirks: add palm size quirk for the Gigabyte Aero 15Peter Hutterer1-0/+5
Fixes #599 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 10124797b502f3dd308919b7bab80752483d0f6b)
2021-04-29quirks: mark the 0x252 razer keyboard as internalChris Dickson1-0/+7
Signed-off-by: Chris Dickson <hobochili@pm.me> (cherry picked from commit 9ce8d561c1bcd9bfe2047d3bb6e099bb5ef3eb2b)
2021-04-29evdev: don't truncate event time to 32 bitsPeter Hutterer1-1/+1
This causes a bunch of "your system is too slow" messages in e.g. the various gesture tests. Fixes 95a72990 Fixes #601 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 04dc67e09250cdf275b139ac9ab0b9a118a7de29)
2021-04-29evdev: don't check the event time if it's higher than the dispatch timePeter Hutterer1-2/+4
The dispatch time is taken during libinput_dispatch(), i.e. at the beginning of an event sequence. We always read all events off the device, so where events come in while we're inside the main dispatch loop, our event time may be later than the saved dispatch_time. This causes an uint underflow and our tdelta > 10 will be true for that case. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 95a72990ad71285b834646210c5a483baabd4b4e)
2021-04-29tablet-pad-leds: Open led file with O_NONBLOCK | O_CLOEXECJonas Ådahl1-1/+1
We don't want the file to be left open after any fork/exec, and we don't want the read to be blocking; so open it as such. Signed-off-by: Jonas Ådahl <jadahl@gmail.com> (cherry picked from commit f723b28220adc64552c4ce26c4c9054494ea0141)
2021-04-29quirk: fix sensitivity for Dell Latitude 7490 pointing-stickBen Weston1-0/+6
Signed-off-by: Ben Weston <b.weston60@gmail.com> (cherry picked from commit 74f6821d7ab9697f3b81aa110ca46cf936fb2b10)
2021-03-24libinput 1.17.11.17.1Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-03-24quirks: add wildcard to HID-over-I2C names (for FreeBSD)Greg V2-2/+2
The FreeBSD HID stack adds the device type to the evdev name, so we get e.g. "ACPI0C50:00 18D1:5028 TouchPad". (Maybe this shouldn't be matched by name at all though...) Signed-off-by: Greg V <greg@unrelenting.technology> (cherry picked from commit 06697b5e85e54965952bfd8efac67c8bde3ff4bc)
2021-03-24quirks: implement DMI support on FreeBSDGreg V1-5/+73
FreeBSD does not use Linux modaliases, so we have to generate these strings. Unfortunately for us, the data in kenv has the chassis type pre-parsed into a nice string, so we have to match these strings back into numbers. Only relevant types are included to avoid bloating the code. Signed-off-by: Greg V <greg@unrelenting.technology> (cherry picked from commit 6941f74070ec0e639bb045107b969b7798947fae)
2021-03-24quirks: add quirks for Apple SPI input devicesGreg V1-0/+25
The Linux applespi driver currently uses the Synaptics vendor ID on the trackpad for some reason (even though, at least from bcm5974 we only know that Broadcom is involved..) but my upcoming FreeBSD driver uses the Apple vendor ID everywhere, so add two quirks. Signed-off-by: Greg V <greg@unrelenting.technology> (cherry picked from commit d8b1a773e306e1055b2a6fc1e71cc7af77c682a2)
2021-03-24quirks: recognize SPI busGreg V1-0/+7
Apple MacBooks (Broadwell/Skylake/Kaby Lake and Apple Silicon) use SPI to communicate with the keyboard and trackpad. Signed-off-by: Greg V <greg@unrelenting.technology> (cherry picked from commit 5f00c32d9ec8878948696f7c89ffb8b29a591fb6)
2021-03-24doc/user: explain why we are doing motion normalizationPeter Hutterer1-0/+5
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 2f8dab4537dda4205763ef2a48f298da9765a408)
2021-03-24completion: add missing libinput analyze subtools to the zsh completionsPeter Hutterer1-0/+23
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 40b83b11058bcc4c02ea3e7b631c8777c01b4291)
2021-03-24Add Lenovo Legion 5 keyboard to 50-system-lenovo.quirksPedro Ribeiro1-0/+16
Signed-off-by: Pedro Ribeiro <pedrib@gmail.com> (cherry picked from commit 5e69c5f9ae793430d8ad07592d3e5bbd1d4e0e5b)
2021-02-23libinput 1.17.01.17.0Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-23tools/record: fix two coverity complaintsPeter Hutterer1-2/+2
In both cases we only read to drain the fd, we don't care about the return value. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-23tools: add a tool to print a libinput recording as a tablePeter Hutterer5-0/+236
This makes it easier to visualize changes in various axes or key states that should not be there, doubly so for long recordings. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-23meson.build: build libinput replay as wellPeter Hutterer2-3/+1
Just like the other python-based tools it's just a basename copy, so let's be consistent here and have all tools perform that way. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-23tools/record: use a helper function to get the next event for a devicePeter Hutterer1-21/+20
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-23tools/record: switch record over to using epollPeter Hutterer1-97/+184
Using poll means more difficult fd management, epoll (together with am modified version of the libinput_sources) makes this a lot easier by simply using dispatch. This means we are no longer reliant on a specific file descriptor order in the poll array. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-23tools/record: reword parts of the man pagePeter Hutterer1-3/+3
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-23tools/record: use safe_basename() to get to the hid report descriptorPeter Hutterer1-8/+5
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-23utils: add a safe version of basenamePeter Hutterer3-12/+66
So we don't need to worry about the libgen.h include game. And we can switch trunkname over to that, making it a bit simpler. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-23tools/record: simplify the behavior to emulate Python's join()Peter Hutterer1-14/+13
Instead of a boolean "is_first", just change the separator. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-23tools/replay: Enter quits if there are no eventsPeter Hutterer1-3/+10
If we have no events in any of the recorded devices, state that this is the case and make Enter simply quit instead of a pointless while loop. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-23tools/replay: search for the first event with a timestampPeter Hutterer1-13/+10
When running with --with-libinput, the first event is the DEVICE_ADDED event for our device. Those events do not have a timestamp. We have to find the first event in the recording with a timestamp instead. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-22tools/record: print a header as first linePeter Hutterer1-0/+1
To make the file format easier to detect Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-19Fix worng quirk name in docyuri19691-1/+1
The doc mentioned 'AttrTouchPressureRange' quirk but `src/quirks.c` defines 'AttrPressureRange' instead. This led to unknown quirk name errors. Signed-off-by: yuri1969 <1969yuri1969@gmail.com>
2021-02-19tools/record: fix outdated commentPeter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-19tools/record: de-inline our functionsPeter Hutterer1-37/+39
Let's leave this up to the compiler, the usual side-effect of inline (compiler doesn't complain about an unused static function) doesn't apply here. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-19tools/record: correct the evdev data format in the man pagePeter Hutterer1-2/+2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-18meson.build: consolidate all man pagesPeter Hutterer1-89/+49
They all use the same configure_file() process, so let's do them all in a loop. Exceptions are the test-suite man page. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-18meson.build: drop the dummy config data and use copy: true insteadPeter Hutterer1-8/+1
We require the meson version this was introduced in, so let's use it. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-17test: add test cases for 2/3 finger movement after drag-locksatrmb1-1/+194
Same as after a tap, just with a short drag between tap and 2/3 finger movement. Also fixes a finger coord typo in one of the previously added test cases. Signed-off-by: satrmb <10471-satrmb@users.noreply.gitlab.freedesktop.org>
2021-02-16libinput 1.16.9021.16.902Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-15test: add test cases for 2/3 finger movement after tapPeter Hutterer3-0/+211
We have two behaviors here: - tap + 2fg -> scrolling - tap + 1fg move + 2f down -> dragging Let's document this. The 3fg case only has one situation, so let's test that. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-15test: drop the needless base event conversionPeter Hutterer1-6/+4
This was just there to avoid unused variable warnings but the simpler approach to that is to just not assign a variable in the first place. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-15test: print the event type on mismatchPeter Hutterer1-2/+1
We already have a helper function for this, let's use it. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-15doc: update the docs with a note regarding multifinger draggingPeter Hutterer1-0/+5
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-15gitlab CI: move the no-libwacom test suite into its own stagePeter Hutterer2-0/+12
Easier to spot visually in the GUI that way Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-15test: fix a few missing or wrong drag-lock timeoutssatrmb1-3/+10
These had no consequences apart from occasional "system is too slow" messages, because the test suite's shorter tap timeout is just barely long enough for drag-lock, and/or because litest_assert_button_event waits for an event anyway. Signed-off-by: satrmb <10471-satrmb@users.noreply.gitlab.freedesktop.org>
2021-02-15touchpad: permit only one finger on the touchpad at the start of a tap-dragsatrmb4-280/+26
This only affects the actual dragging part of the tap-and-drag interaction; n-finger tap-and-drag is supposed to be performed with a n-finger tap followed by a 1-finger drag. Allowing a second finger in the middle of a drag is still necessary for a finger swap, which users may need in long-distance drags, especially when drag-lock is disabled. Signed-off-by: satrmb <10471-satrmb@users.noreply.gitlab.freedesktop.org>
2021-02-15touchpad: stretch the tap-and-drag timeout a bit depending on finger countsatrmb2-8/+30
Some users reported problems triggering multi-finger tap-and-drag, with reliability decreasing as the finger count increased. This is plausible because they may shift towards moving the whole hand up and down, which obviously takes more time than just a finger. Signed-off-by: satrmb <10471-satrmb@users.noreply.gitlab.freedesktop.org>
2021-02-15doc/user: generate the required package list for the CI distributionsPeter Hutterer3-0/+47
Use yq to extract the package list from the CI configuration, then dump that into the user docs. This provides the long-requested commands to install all dependencies without the maintenance effort or risk of going stale. Note that we are *not* building this in the CI, it's just not needed. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-12gitlab CI: add a job to make sure we're running all test suitesPeter Hutterer2-0/+60
Only needs to run when meson.build or the CI script update Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-12test: drop the custom group namesPeter Hutterer24-1006/+1055
The group names are forced by check (they are called suite names there) but for our test suite they provide very little benefit. Much easier to just use the filename a test is in as group name. This removes the pure substring match for --filter-group, it's now fnmatch only. group names are short enough that the typing isn't an issue and we don't want to run tests twice (e.g. 'pad' is also in 'touchpad'). This patch caused #574 until it got fixed in d838e3a3a4c Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-12utils: add a trunkname() function to extract the trunk of a filenamePeter Hutterer3-0/+61
/path/to/foo.bar returns "foo" Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-12gitlab CI: make the test suite names a listPeter Hutterer2-25/+25
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>