[ANNOUNCE] libinput 1.10.901
Peter Hutterer
peter.hutterer at who-t.net
Tue May 22 01:37:01 UTC 2018
The first RC for libinput 1.11 is now available.
Quite a long development cycle this time and a bunch of things have changed,
some of which have already found their way onto the 1.10.x branch. Here's
and abbreviated list of changes since the 1.10.0 release:
A new tool pair is available now: libinput record and libinput replay.
These tools supersede the evemu-record/evemu-play tools currently used to
debug events. Usage is basically the same for users, simply run
sudo libinput record
and select your device. The biggest advantages are that we can now
record and replay multiple devices at once and interleave the output from
evdev with the one from libinput. This should make debugging a lot easier.
For more info, see
https://wayland.freedesktop.org/libinput/doc/latest/tools.html#libinput-record
The touchpad jitter detection code has been improved to reduce the
number of false positives. Some touchpads require the kernel fuzz setting to
be set to avoid pointer jitter though, please see this page for details:
https://wayland.freedesktop.org/libinput/doc/latest/touchpad_jitter.html
A new touchpad acceleration code has been merged, the behavior now resembles
the pointer acceleration of macos. You will notice that your touchpad is
slower at slow speeds and accelerates sooner. At the same time, the speed
range available has been greatly extended, so the slowest speed and highest
speed are quite significantly apart now. This should, hopefully, allow all
users to select a speed to match their preferences.
The maximum delta for trackpoints has been increased, reducing the amount of
pressure required to move the pointer around the screen. We also merged a
bunch of trackpoint range hwdb entries to set the expected range for some
common devices. The POINTINGSTICK_SENSITIVITY udev property is now ignored,
instead we just read that value directly from sysfs.
A new API call is now available to fetch the number of supported touches
from a device with the LIBINPUT_DEVICE_CAP_TOUCH capability:
libinput_device_touch_get_touch_count()
You can use this call to determine if the touch device is single- or
multi-touch capable.
Note to packagers: the libinput-list-devices and libinput-debug-events
compat scripts have been dropped, see commit 8a223e739b0a35e28. Revert that
one if you need to keep shipping those.
In addition to the above, we have various fixes across the board including
palm detection and thumb detection improvements, better handling of Aiptek,
HUION, etc. graphics tablets and better handling of the stylus -> touch
transition on graphics tablets.
As usual, the git shortlog is below.
Chow Loong Jin (1):
Bump TRACKPOINT_DEFAULT_MAX_DELTA to 120
Daniel van Vugt (2):
Introduce omnidirectional (elliptical) hysteresis
Improve responsiveness for Apple Magic Trackpad
Davide Depau (1):
evdev: don't suspend keyboard on ThinkPad X1 Yoga 1st in tablet mode
Deepa Dinamani (1):
Update struct input_event
Friedrich Schöller (1):
touchpad: fix tapping that happens after a moving thumb
Konstantin Kharlamov (3):
indentation: add .dir-locals.el for emacs
touchpad: remove the code for disabling hysteresis
touchpad: add wobbling detection
Mario Di Raimondo (1):
Fix Apple Magic Trackpad sensitivity
Maxin B. John (1):
libinput-measure-touchpad-tap: use /usr/bin/env to invoke python3
Mike Hogye (1):
Fix spurious palm detections for Logitech Wireless Touchpad
Nandor Han (1):
udev: validate input devices during cold-plug
Paul Kocialkowski (1):
udev: Fix Chromebook R13 CB5-312T hwdb name
Peter Ganzhorn (1):
fallback: Add IBM/Lenovo Scrollpoint mice quirk to enable smooth scrolling.
Peter Hutterer (198):
evdev: fail before open_restricted if the devnode doesn't exist
evdev: add a quirk to disable debouncing on the MS Nano Transcievers
test: make the mouse tool a litest feature bit
tablet: move the quirk disabling up within tablet_init
tablet: release the tablet state on device delete
tablet: skip tablet_flush() if our current tool type is none
tablet: disable BTN_TOOL_MOUSE/LENS for non-Wacom tablets
tablet: fake a BTN_TOOL_PEN on the first event if needed
Add a test device for aiptek tablets
Silence coverity warning about uninitialized entry
Don't leak when realloc fails
udev: fix segfault when resuming before assigning a seat
touchpad: compress a statement
touchpad: add a touch index for debugging
test: send major/minor for the wacom intous 5 finger device
touchpad: only begin fake touches when we have at least one finger down
meson: add the 221 version to the libsystemd dependency
touchpad: reset the palm state to NONE on a new touch
touchpad: change the stylus palm arbitration to process touches
evdev: pass the time down to toggle_touch
touchpad: delay arbitration by 90ms after touch toggle
evdev: remove excessive debugging output
tools: remove pressure copy/paste leftovers from measure touch-size
tools: fix option parsing in libinput measure
Whitespace fix
udev: fix flake8-3 complaint in parse_hwdb.py
tools: fix inverse up/down threshold handling in measure touch-size
meson.build: bump to 1.10.900
test: fix an incomplete comment
touchpad: don't do speed-based thumb detection on single-touch or semi-mts
tools: add a libinput-record tool
tools: add a libinput-replay tool
doc: add a section to the tools page for record/replay
tools: add --all to libinput-record
doc: more references to libinput-record
test: don't run the MT pressure test on devices without MT pressure
test: don't run the 2fg pressure test on single-touch touchpads
touchpad: add the pressure thresholds to the debugging output
touchpad: don't end below-threshold pressure touches if nfake_fingers > nslots
touchpad: add a TOUCH_MAYBE_END state
tools: fix two scan-build errors in libinput-record
tools: remove a stray perror() in libinput-record
touchpad: move the hysteresis into its own substruct
test: don't use litest_is_pad_button_event for a few tests
pad: use libwacom to get the evdev to button number mapping
touchpad: init touch size range based on the udev property
touchpad: enable palm detection on tablets' touchpads
tools: add the git version in the libinput-record output
meson: make libinput-git-version.h a source of libinput-record
touchpad: handle a palm down in the tapped state
meson.build: fix vcs_tag fallback argument
tools: record udev properties in libinput-record
fallback: fix touchscreen defuzzing
touchpad: use the fuzz value (if any) for the hysteresis margin
touchpad: enable hysteresis based on a 0 fuzz value
Extract and reset the abs fuzz value for the x/y axes
tools: add a tool to verify the yaml output from libinput-record
tools: libinput-record: fix frame printing for multiple devices
tools: libinput-record: drop unused 'print' argument
tools: libinput-record: add separate variable for the first device
touchpad: end hovering touches in maybe_end_touch
touchpad: don't enable top palm detection on touchpads <= 55mm high
touchpad: make sure we compare only the last 3 events for wobble
tools: libinput-replay: only print the events in verbose mode
test: disable the second-finger-move test for semi-mt devices
tools: libinput-record: add support for printing libinput events
tools: libinput-record: print a comment when the device is in a neutral state
tools: libinput-record: print a progress bar when recording to a file
tools: libinput-record: print the mouse and pointingstick udev properties
tools: touchpad-pressure: init the lo/hi values correctly
meson: point users to disabled documentation when dot/doxygen is missing
udev: add the P50 to the T450 jumping motion quirks
test: fix vert axis printing on error
test: drop the * from the Lid Switch test device udev rule match
touchpad: only keep low-pressure fingers alive for 2+-slot touchpads
test: move all the _setup() functions into a special section
test: reliably sort the udev rules
tablet: add missing space in an error message
udev: add trackpoint range for Lenovo X280
CODING_STYLE: add exception for for (int i=0, ...) declarations
test: add a script to check for leftover litest rules
udev: add the T440p to the T450 jumping motion quirks
evdev: add another debug message for the trackpoint sensitivity
evdev: point users to the trackpoint documentation for missing ranges
udev: add trackpoint range for the T440s
udev: add T450s trackpoint range
doc: expand on the palm detection documentation a bit
touchpad: log the touch size thresholds if we're using them
touchpad: don't process state for a touch in TOUCH_NONE
Fix a doxygen link for the get_default_matrix call
tools: fix man page for debug-events
test: call K_OFF when run on the vt
doc: debugging touchpad pressure/size ranges is interactive
doc: axis overrides need to go to systemd, not libinput
Revert "udev: add the P50 to the T450 jumping motion quirks"
evdev: break up a long line
evdev: return an error if the profile change failed
tools: fix switch case-statement indentation
doc: expand the "reporting bugs" page
debounce: disable debouncing on the Logitech K400
evdev: remove duplicate MODEL entry in the model parsing
evdev: add a run-time check to avoid re-using model flags
doc: add a section on what happens when a bug was resolved
meson: only run the selinux restore script on meson < 0.43
Drop the libinput-list-devices and libinput-debug-events compat scripts
Remove some duplicate empty lines
doc: add a description of the internal architecture
test: add a test for a touchscreen with out-of-range axes
Revert "Add Dell XPS13 L322X touchpad quirks"
test: remove double check for empty queue
test: replace a strcmp with streq
test: use a udev monitor to wait for a device to disappear
udev: add the P50 to the T450 jumping motion quirks
meson: re-use the filter source list
filter: factor out the pointer trackers from the accel filter
filter: move some functions to the shared header
filter: move the smoothing values to the trackers
filter: pass trackers to calculate_velocity
filter: add helper function to reset and free trackers
filter: move the x230 filter into a separate file
filter: split the tablet accel code into a separate file
filter: split trackpoint acceleration code into a separate file
filter: move the pointer_accelerator struct into the header
filter: make the simpsons accel calculation available through the header
filter: split the touchpad acceleration code into a separate file
filter: move the velocity diff to the only function we use it in
filter: move the flat filter into a separate file
filter: split the low-dpi acceleration into a separate file
filter: tidy up the touchpad filter
filter: drop the ntrackers argument from init_trackers
filter: split the mouse acceleration out into a separate file
filter: namespace the various trackers_* functions
filter: duplicate the pointer_accelerator struct into the bits that use it
tools: yaml verifier: add POINTER_AXIS to allowed events types
tools: yaml verifier: allow for SYN_REPORT value 1
tools: libinput-record: add gesture support
tools: libinput-replay: handle a nonzero offset for the first event
tools: yaml verifier: fix some flake8 warnings
touchpad: ignore palm touches when handling clickfingers
touchpad: ignore any semi-mt movement in the same frame as a finger release
test: print the full event in case of a mismatch
test: print the device name for a wrong event
evdev: disable ABS_MT_TOOL_PALM on the Lenovo X1 Carbon 6th gen
filter: make the MAX_VELOCITY_DIFF a double
gestures: if two fingers are in definitive pinch position, pinch
tools: fix the script to make ptraccel graphs for meson's builddir
filter: always average the velocity of the first two events
util: add a helper function to split a key-value pair string
Expose a custom acceleration profile
touchpad: allow custom profiles on touchpads
touchpad: fix the trackpoint event counter for the T460s
util: allow for palm pressure > 255
Add libinput_device_touch_get_touch_count()
tools: print the number of touches for touch devices
touchpad: reset the wobble detection history for y-only changes
touchpad: reset the wobble detection for non-pointer events
touchpad: only try to detect touchpad wobbling with one finger down
evdev: mask out MSC_TIMESTAMP, we don't need it
tools: libinput-record: move the event time offset to the first place we get it
Allow for TABLET_TOOL_BUTTON events in the various tablet_tool_get_<foo>()
util: add a strv_join() helper function
tools: libinput-record: print tablet events in --with-libinput
tools: libinput-record: print switch events in --with-libinput
test: don't use ck_assert_ptr_null
util: remove dead assignment in strv_join
doc: drop doc for POINTINGSTICK_CONST_ACCEL, no longer in use
doc: add two more items I need for trackpoint bugs
Revert "touchpad: only try to detect touchpad wobbling with one finger down"
touchpad: only try to detect touchpad wobbling with one finger down
udev: copy the trackpoint sensitivity directly from sysfs
tools: switch the ptraccel-debug tool to report profile curves by default
Fix the scan-build fake leaks
gitignore: ignore gnuplot files
tools: fix pointer acceleration graphs generation script
tools: fix an argument name for ptraccel-debug
doc: update pointer acceleration doc with the fixed graphs
doc: fix typo
evdev: drop the arbitrary trackpoint range maximum
touchpad: add a tool to measure the touchpad fuzz
Update the README and the graphs showing libinput in the stack
tools: ptraccel-debug: match the help with the actual trackpoint range value
test: assume Wacom devices are external touchpads
meson: add a 'coverity' option to fix the build
tools: ptraccel-debug: switch to a mode enum
utils: fix leak in kv_double_from_string()
tools: libinput-record: fix leaking memory in the error cases
util: avoid potential integer overflow
tools: ptraccel-debug: fail for a sequence without events
evdev: add three more Logitech K400-like devices to the debouncing quirk
touchpad: split the switch event handlers up
touchpad: remember the suspend reason
test: mark the thinkpad extrabuttons device as ID_INPUT_SWITCH
test: fix the udev rule for the HP WMI hotkeys device
Revert "touchpad: allow custom profiles on touchpads"
Revert "Expose a custom acceleration profile"
tools: debug-gui: add some extra targets for pointer acceleration testing
filter: improve touchpad acceleration
libinput 1.10.901
Peter Seiderer (1):
tools: libinput-debug-events stop variable needs volatile
Quentin Glidic (2):
meson: Fix bindir usage in install script
meson: Fix absolute libdir case in install script
Sean Lanigan (2):
Add Dell XPS13 L322X touchpad quirks
Add Dell XPS13 L322X touchpad quirks
Tim Richardson (1):
evdev: fix duplicated flag value
Veli-Jussi Raitila (1):
Add quirk to fix spurious palm detections on MacBook Pro (13-inch, Mid 2009)
git tag: 1.10.901
https://www.freedesktop.org/software/libinput/libinput-1.10.901.tar.xz
MD5: 001351bb095d465e89fd68b81f64d403 libinput-1.10.901.tar.xz
SHA1: 707933fcc610384780e753af1bd2ecebcabaaf33 libinput-1.10.901.tar.xz
SHA256: ccaf90b78ba8ffe46aeda0129c24889910f80cd2f2ef94ac175001eb58afb5af libinput-1.10.901.tar.xz
SHA512: b2251e8d33e95e7e6c8a7a54dc8038b540ea4132a0e7662eca11c9afdc7b6b5052f22f07e07c36e47a5b7d27005d8f667184b4ced729c7401747ee8761a394bd libinput-1.10.901.tar.xz
PGP: https://www.freedesktop.org/software/libinput/libinput-1.10.901.tar.xz.sig
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 163 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20180522/2fc329e3/attachment-0001.sig>
More information about the wayland-devel
mailing list