libinput 1.27.0 is now available. In terms of new features we have a "sticky" mode for drag-locking. Previously a tap-and-drag lock would always expire after a timeout, now the button is held logically down until a completing tap. Desktop environments are encouraged to use this as the default as it provides a better experience for anyone with less-than-perfect dexterity. For backwards-compatibility reasons libinput cannot easily change its defaults without risking bugs in the callers.
For tablet pads we now support tablet pad mode groups for devices without status LEDs as well, the previous implementation was tied to LEDs which some devices like the XP Pen ACK05 remote don't have. Since the mode is a software feature anyway tying it to LEDs is not necessary. If a tablet is unknown to libwacom we now assume that it is a built-in tablet. This matches the behavior of libwacom 2.11 but in our case the only visible result is that the device now has the calibration configuration available. Better to have it and not use it, as they say. The available area on external tablets can be reduced via the new tablet "area" configuration. Users can set a rectangle smaller than the width/height of the tablet and input outside this rectangle will be ignored. For packagers: the check dependency is now optional, almost all tests can now run without it. And then we have of course the usual collection of bug fixes and device-specific quirks. As usual, the git shortlog is below. Ajrat Makhmutov (2): quirks: touchpad quirk for Graviton N15i quirks: touchpad quirk for ICL Si1516/Si1512 Daniel Fuchs (1): quirks: adjust pressure range for Google Krane, Wormdingler and Coachz José Expósito (3): Fix pre-commit errors CI: Run pre-commit hooks editorconfig: add settings for sym files Mingcong Bai (2): quirks: add pressure pad quirk for Lenovo ThinkBook 14 G7+ ASP quirks: lower AttrTrackpointMultiplier for ThinkPad X200/201 to 0.25 Muhammad Talal Anwar (1): quirks: add Logitech ERGO M575(S) Peter Hutterer (147): triage-policies: add an entry for pointing users to 60-evdev.hwdb quirks: add quirk for Razer Blade 142024 Keyboard util: add a strv_for_each helper function quirks: allow for parsing multiple products doc/api: fix wrong references to the tap drag config tools/debug-events: ignore old-style pointer axis events completely tools/debug-events: add ability to compress motion events CI: retry valgrind jobs if they fail triage-policies: point to the new hid-recorder written in rust gestures: cancel the hold before initializing the pinch tools/debug-events: move the event type str to a helper function triage-policies: add a blurb for the help-needed label triage-policies: add reminder for info in commit messages test: make litest_drain_events_of_type auto-terminating test: make litest_wait_for_event_of_type auto-terminating gestures: use a colon-suffixed debug prefix like the other state machines test: highlight the gesture state machine log messages in yellow test: improve event debugging a bit test: abort on libinput bugs again test: add litest_dispatch() for better test debugging test: use litest_assert_empty_queue instead of a manual none check test: fix use of wrong enum for setting clickfinger maps test: use litest_wait_for_event instead of a NONE event check test: use litest_assert_event_type instead of direct type check test: fix macro grouping in the litest.h header tools: add --set-calibration to the debug-events man page util: add a safe version of strlen Fix a few potential NULL dereferences CI: skip the valgrind tests for marge-bot gestures: log the finger count together with the gesture state gestures: make a error message more informative gestures: rename tp_gesture_handle_state and tp_gesture_post_gesture gestures: replace switch-timeout based gesture_cancel calls with a state gestures: distinguish between a gesture reset and a gesture end/cancel gestures: log a bug if we're trying to reset an actual gesture gestures: push tp_gesture_end() into the actual state machine gestures: push tp_gesture_start() for hold gestures into the state handling gestures: rename most events to FOO_START gestures: rename gesture_notify_hold to gesture_notify_hold_begin() gestures: get rid of tp_gestures_start gestures: add debugging for state transitions gestures: change a boolean to an enum for more expressive code test: switch unused argc/argv to the list of tests test: move the test devices into the test_device_section test: make litest-test-suite --list YAML-compatible test: fix uinput creation for the slotted devices with too many slots test: add a missing va_end test: fix a data type in the utils test test: fix double parsing test test: fix missing END_TEST for strv_for_each_test test: replace ck_abort with litest_abort_msg() test: add litest_assert_event_type_not_one_of test: initialize a variable to make scan-build happy test: add a macro to compare two doubles with a specific epsilon test: fix a touch test comparing ints to doubles test: fix some checks using ints to compare doubles test: replace manual "almost equal" with the new double epsilon test: add litest string comparison macros test: switch ck_assert over to litest_assert test: switch a bunch of integer comparisons to right sizes test: add macros to compare enum values test: switch the tests to use enum comparisons doc: correct that the test suite is indeed run in the CI test: fix litest_abort_msg() not starting a new line test: switch a bunch of tests from abort() to one with a message test: add a helper for deleting a created file test: init the device list via argument test: add restore_tty helper and use it test: init the global devices/test lists immediately test: check for empty tests immediately, not later when we're running test: check for verbosity immediately in main() test: rename all_tests to all_test_suites test: rename a variable to indicate suites, not tests test: use a litest helper instead of return code comparison CI: set the LITEST_JOBS in the template, not the script tablet: fix a memory leak caused by an early return test: match the tablet's pad test collection with the file name test: detach the suite handling from the file names test: make the TEST_COLLECTION() macro re-usable in the same file meson: break out the test suites into manual list test: split out the touchpad tap tests into multiple collections CI: move the "device" test suite to the "misc" set of suites test: split the tablet left-handed tests out into a separate collection test: split the touchpad tests into a palm and a dwt test collection tools: add rel dial support to libinput-list-devices tools: print full pad mode group info in libinput-list-devices pad: don't print a clobbered errno pad: move a function to save on an ifdef pad: default a pad group to mode 0 if all LEDs are off util: add the backtrace printing function as separate util util: make a float to int conversion explicit tools: change direct type check to isinstance pre-commit: drop black, use ruff-format instead util: add xclose(fd) to close-and-reset an fd util: move libinput_now() into a utility function util: add a bunch more time conversions test: append, not insert the suites test: make litest_backtrace() available from outside litest.c test: filter out duplicate name/device combos in --list test: move the deviceless check into ltest_add_tcase util: add the range handling as separate header file util: add a generic stringbuffer with a few helper functions test: make the utils test another litest test: convert utils test to litest_assert test: fix utils test for types for litest assertions test: add litest-runner as test suite runner test: move the quirks context init into litest_run test: remove now-unused check-double-macros.h test: add --exit-first to the litest test suite runner test: make the utils test a "pure" litest-runner test test: move litest_free_test_list to inside ifndef NO_MAIN test: intercept and collect valgrind errors test: only force gdb to no-fork, valgrind can fork test: move tty disabling closer to the actual running of the tests test: move the rest of the custom initialization to litest_run test: the created files list doesn't need to be a global test: add runner support for a global setup/teardown func test: move the quirks setup into the global setup func test: add ability to collect test results from a nonforking test test: add --filter-rangeval to only run tests with a range value CI: disable forking for valgrind tests test: drop the --xml-prefix option test: add --output-file to print test logs to a file CI: collect valgrind log files too test: fix strip values being passed to ring functions test: fix 3 compiler warnings when building without libwacom test: mark the pad group tests as basically broken by expectation pad: rename an argument for more clarity pad: remove an unused argument pad: don't clobber the errno if the pad led failed to initialize pad: rework the tablet pad mode setup pad: support dial modeswitch buttons tablet: minor rework to remove one ifdef HAVE_LIBWACOM tablet: centralize the libwacom handling test: fix two race conditions waiting for proximity events tablet: default to a built-in tablet tools: sort the options in debug-events match page tools/debug-events: print bugs in bold red Move scale_axis to a utility header so we can re-use it better Move evdev_convert_to_mm to a more generic helper tablet: use our absinfo_x/y struct instead of the libevdev one Add tablet area configuration tablet: implement support for area configuration for external tablets tablet: ignore movements started outside the configured area zsh: sort the debug-events argument (mostly) alphabetically zsh: update completion to include latest debug-events options libinput 1.27.0 Tim Hanson (1): Update quirks for HP Dragonfly Chromebook WeirdTreeThing (1): quirks: Add quirk for Google Chromebook Cret Wentao Guan (1): quirks: add a quirk for the HONOR MagicBook Art 14 touchpad satrmb (1): touchpad: add sticky mode to drag-lock
signature.asc
Description: PGP signature