[ANNOUNCE] libinput 1.18.901

Peter Hutterer peter.hutterer at who-t.net
Wed Sep 1 04:50:50 UTC 2021


libinput 1.18rc1 is now available.

This release brings two new features and the correspoding API additions: hold
gestures and high-resolution wheel scrolling (which changes the scroll APIs).

Hold gestures are a new type of gestures that are triggered by holding one or
more fingers on a touchpad without significant movement. They add to the
existing pinch and swipe gestures and allow for the implementation of
hold-to-click. Where callers implement kinetic scrolling, hold gestures can be
used to stop scrolling - since the gesture is triggered on a finger(s) down
after a scroll motion, that event can be used to stop scrolling.
Many thanks to José Expósito for the new gestures.

High-resolution wheel scrolling has been long in the making and the solution
ends up replacing the existing pointer axis API. Three new events are
available: LIBINPUT_EVENT_POINTER_SCROLL_WHEEL,
LIBINPUT_EVENT_POINTER_SCROLL_FINGER, and
LIBINPUT_EVENT_POINTER_SCROLL_CONTINUOUS. These events **replace** the
existing LIBINPUT_EVENT_POINTER_AXIS events, i.e. if you are processing the
new events simply discard the old events.

The FINGER and CONTINUOUS events are very similar to the previous event, the
WHEEL event supporst a new API: libinput_event_pointer_get_scroll_value_v120().
That function returns the value of a scroll movement in multiples or fractions
of 120. For example, a high-resolution scroll event that triggers 4 events
instead of just 1 per 15 degree rotation will generate 4 events with a value
of 30 each.

Many thanks to José Expósito for taking those patches and pushing them over
the line so they could be merged.

The documentation has been updated for the new APIs,
please see https://wayland.freedesktop.org/libinput/doc/latest/.

The rest of the changes is the usual mix of janitorial patches and
device-specific quirks.

As usual, the git shortlog is below.


Andrea Ippolito (1):
      doc/user: make "verifying install" command portable

Dmitry Maluka (1):
      quirks: Thinkpad T470 trackpoint multiplier

José Expósito (29):
      gestures: add a function to know if there is pending pointer motion
      gestures: refactor gesture enabled
      gestures: handle pointer motion as an extra state
      gestures: use events to change between states
      gestures: filter motion inside the gesture state machine
      libinput: add hold gesture public API and tool support
      gesutures: allow to configure hold gestures
      gestures: add hold gesture implementation
      tests: move existing gesture tests to functions to be able to reuse them
      tests: optionally hold in gesture test functions
      tests: add hold gesture tests
      gestures: add quick hold implementation
      doc: add touchpad gestures state machine diagram
      doc: update draw.io URL
      gestures: always save touch information
      gestures: move first_moved and first_mm up
      gestures: improve one finger hold detection
      doc: add common failed pipeline errors
      tools/debug-gui: move gtk_main_quit to a function
      tools/debug-gui: use GMainLoop instead of gtk_main
      tools/debug-gui: refactor UI element placement
      debug-gui: migrate to GTK4
      debug-gui: pointer locking on Wayland
      debug-gui: pointer locking on X11
      ci: update to GTK 4 when available
      meson.build: use the / operator instead of join_paths
      editorconfig: add settings for meson files
      quirks: Lenovo Trackpoint Keyboard II
      test: refactor litest_assert_event_type logic

Kevin Anderson (1):
      quirks: add Framework Touchpad Quirk

Mohamed Elsharnouby (1):
      quirks: add pressure range for Dell Latitude 7480

Peter Hutterer (27):
      doc: note that gestures may be cancelled
      doc: add docs for hold gestures
      meson.build: bump to 1.18.900
      gitlab CI: add a comment to explain how to actually edit the CI
      quirks: add a quirk for the Huawei Matebook 2020 touchpad
      quirks: add a quirk for the X61 bezel buttons
      util-list: restore list_for_each_safe() to be a single statement
      Replace fallthrough comments with __attribute__((fallthrough))
      Silence compiler warnings for -Wformat-nonliteral
      Disable -Wmissing-field-initializers
      Mark some functions as printf-like to silence some compiler warnings
      touchpad: remove two unused functions
      doc/user: fix the line alignments for the hold gesture tables
      doc/user: move the hold gesture section up to the others
      gitlab CI: name the qemu tags per distribution
      gitlab CI: split the qemu meson build parts out as separate template
      gitlab CI: update to latest ci-templates
      gitlab CI: move the SUITES handling to the template where it matters
      gitlab CI: use the ci-templates FreeBSD templates
      Define the versionsort overrides as inlines
      gitlab CI: debug the meson_build script
      gitlab CI: drop dependencies between jobs
      meson.build: disable documentation by default
      test: use MESON_TESTTHREADS to determine the number of jobs
      test: create devices for our udev seat checks
      High-resolution scroll wheel support
      libinput 1.18.901

Quytelda Kahja (3):
      quirks: Add tablet smoothing attribute.
      Add section for Lenovo Yoga C930 tablet in 50-system-lenovo.quirks.
      test: Add test for parsing of boolean quirk attributes.

Sanjiv (1):
      Update quirks/50-system-chuwi.quirks

The_Observer (1):
      quirks: add a quirk for the Purism Librem 14v1

Thomas Stenhouse-Pyne (1):
      quirks: add volume rocker quirk for Lenovo Duet 7i

Thomas Weißschuh (1):
      evdev: remove device when it is gone

luokai (1):
      using secure functions safe_strdup

satrmb (1):
      quirks: Chuwi AeroBook Plus has a clickpad falsely claiming to have BTN_RIGHT

git tag: 1.18.901

https://www.freedesktop.org/software/libinput/libinput-1.18.901.tar.xz
SHA256: 9597051eccfc56cd91ad9323a66a4d7db90f758ef5cabe3ce82dd279b7f19d40  libinput-1.18.901.tar.xz
SHA512: 383ffc85eaa74c58860600617878bfc60ae2dd9a29b975f2a393575901f76abeb3721194c00e62054218ffdf8cf479dd9deba58a906e4e7ef17df561fe1f5207  libinput-1.18.901.tar.xz
PGP:  https://www.freedesktop.org/software/libinput/libinput-1.18.901.tar.xz.sig

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20210901/824495f5/attachment.sig>


More information about the wayland-devel mailing list