[ANNOUNCE] libinput 1.6.901
Peter Hutterer
peter.hutterer at who-t.net
Thu Feb 23 01:47:40 UTC 2017
The first RC for libinput 1.7 is now available. This cycle was quite a large
one and several big features were merged, so expect a few RCs before the
final release.
First big feature: James Ye implemented support for switches, in particular
lid switches. Closing the lid now disables the touchpad to avoid ghost
touches but it also makes the lid switch event itself available to any
callers. This is a new interface announced by the LIBINPUT_DEVICE_CAP_SWITCH
capability, see the documentation for more info:
https://wayland.freedesktop.org/libinput/doc/latest/group__event__switch.html
Touchpads now use pressure values to detect touches instead of relying on
BTN_TOUCH. This enables us to have per-device pressure values where needed
to avoid misdetection of light or hovering touches. For now all touchpads
use the default pressure vaules, if you have had issues with touch
misdetection please file a bug with the required pressure ranges.
Wheel tilt events are now handled as such provided the device is correctly
labelled by the hwdb. A wheel tilt will not be advertised as scroll source
'wheel' but rather 'wheel tilt', making it possible to different between the
two in the caller.
Middle mouse button emulation is now compatible with scroll wheel emulation,
i.e. it is possible to set scroll wheel emulation on the right mouse button
and still enjoy middle button emulation. This is useful mostly on very old
mice and some trackballs.
On the topic of scroll wheel emulation: pressing the scroll button now
always generates a button event (provided now scrolling was triggered).
Previously this depended on an internal timeout which was hard to predict
for users. Of course, if any scrolling is triggered while the button is
down, no button events are sent.
Tablet pad LEDs now hook up correctly to the new kernel LED implementation
available in v4.9 and later. Pressing the respective mode button will thus
toggle pad modes in the events correctly.
Internal cleanup work touched most of libinput. And a gcov run exposed
some untested code paths and a lot of tests have been added for those.
External touchpad-keyboard combos can now be marked with a udev property to
sure we enable disable-while-typing on the correct devices.
Finally, the libinput-debug-events tool now uses colours and hides keycodes
by default. It's now safe to run it in the background to record events
without having to worry that passwords end up in the log. If you do need the
keycodes, run with the --show-keycodes argument.
As usual, the git shortlog is below.
James Ye (4):
Add a "switch" interface for parts of the SW_* range
Add evdev_dispatch interface for lid switch
Pair touchpad and lid_switch for disable
test: add tests for lid switch
Mihail Konev (1):
autogen: add default patch prefix
Peter Hutterer (122):
Add wheel tilt as axis source
evdev: add support for wheel tilt
test: remove some untriggered code from the keyboard tests
test: simplify some checks in the path test
test: fix pointer accel defaults test
test: fix some tablet tests' unreached code
test: check if left-handed is available for the left-handed tests
Hook up gcov for coverage reports
test: add a test for keyboard LED updates
test: add helper function to install a "bug expected" log handler
test: add test for invalid udev_assign_seat on path context
test: add test for invalid path operations on udev backends
util: make all property parsing helpers ignore NULL strings
test: add tests for checking for buttons for a non-pointer device
test: test for libinput_device_get/set_user_data
test: add test for fetching invalid pointer axes
test: add some device capability checks
test: add a test to force a destroy for the path backend
test: add a tablet tool capability check
test: add test for tablet_tool_get/set_user_data
test: add a test for tablet pad event timestamps
test: add a test for the tool ID
test: add device size/no size checks
test: test absence of scroll events on keyboards
test: ad calls to check whether pressure has changed
test: add more tests for tap-drag config
test: add tests for tablet buttons and button seat count
test: check the pad button state in litest_is_pad_button_event
test: add test to set tap map on unsupported devices
test: add wheel tilt tests
pad: implement kernel-based pad led handling
touchpad: mask out ABS_MT if we don't have or disable MT
touchpad: convert normalized_length to physical coordinates
Drop normalized_get_direction, use physical distances instead
evdev: fix an error message
touchpad: use a helper function for the libinput context
autogen.sh: exec the configure script
evdev: move the lid switch process functions together
touchpad: check for a switch type before handling the event
Clarify the default 'off' position of a switch
switch: sync the initial state of the switch on startup
switch: prevent switches to send the same event twice
switch: only sync the initial state if we know the state is reliable
switch: move the lid switch bits into their own file
Add a helper function for initializing an event listener
switch: hook up to keyboard events to fix the lid switch state
test: add two more touch..._extended functions
test: force a pressure of 0 when we hover a touch
touchpad: ignore hovering touches when tapping
test: allow nesting of litest_push_event_frame()
test: convert event handling while loops into for loops
test: handle semi-mt devices in litest
test: switch the semi-mt devices to use the litest semi-mt handling
doc: update the FAQ entry with how config options are stored
test: make sure touch up resets pressure
test: add the right pressure bits.
touchpad: use pressure values for touch is-down decision
test: add touchpad pressure tests
test: fix two test udev rules
udev: mark all laptops as lid switch reliable
test: fix two test udev rules
switch: for surface 3 tablets, write the lid open to the device
evdev: improve type-safety on dispatch switches
evdev: add a wrapper to get the evdev device from a libinput device
doc: add a table of contents to the FAQ
evdev: fix a comment typo
touchpad: remove unnecessary return statement
test: fix tablet tool_id test to fail on unexpected ids
test: fail before zero division
Revert "touchpad: reduce the initial timeout for tapping after touch"
path: remove unused declaration of path_input_process_event
path: remove unncessary declaration
test: fix ranged test for 'no device' tests
test: add test for default button tap map (on non-tapping devices)
test: add test for natural scroll defaults on no-scroll devices
test: add missing checks for tap enabled/disabled by default
test: add test for pad event mode groups
test: test click method setting on non-touchpads
test: add test for setting pointer accel profiles on no-accel devices
Swap the return values for unsupported scroll button configs
test: add test for touch seat slots
configure.ac: bump to 1.6.900
touchpad: expand top middle button to cover 40mm to 60mm
pad: don't warn about failure to initialize the LEDs on litest devices
touchpad: mark the Apple onebutton touchpad as clickfinger-default
evdev: free the output name on evdev_destroy()
path: parse the WL_OUTPUT property for patch devices too
evdev: split calibration property parsing into a helper
test: add basic test for getting the physical seat name
test: add helper functions to filter an event
test: add tests for tablet tool types
touchpad: add a hwdb quirk for (external) touchpad/keyboard combos
touchpad: drop 'is blacklisted' check for dwt pairing
doc: make the tap-to-click default setting a separate section
doc: link to tapping page from the FAQ
doc: add a page "what is libinput"
tools: hide key codes by default
tools: don't print device options on device removed
tools: print errors as red, info as highlighted
test: fix udev rule for waltop tablet test device
tools: size without decimals is good enough
test: check the libinput device for BTN_MIDDLE, not the libevdev device
test: fix middle button defaults test
test: skip two tests when middle button is missing
test: fix the pointer scroll-defaults test
evdev: allow button scrolling on the L/R button with middle emulation active
evdev: add quirk for Logitech Marble Mouse
evdev: rename define for button scroll timeout
evdev: add state debugging to button scrolling
test: add tests for middle button + button scrolling on BTN_LEFT
evdev: convert button scrolling into a state machine
evdev: add "READY" state to button scrolling
evdev: don't provide button scrolling on absolute pointer devices
Add the matching @see tags to the accel config
tools: print the key as -1 for obfuscated keys
tools: print accel profiles up to 1000 mm/s
test: add a has_slider check for the airbrush tool
doc: minor documentation fix
doc: disable the search engine/search box
doc: allow custom styles to overide the bootstrap style
doc: add a custom css for local overrides
configure.ac: libinput 1.7rc1
Sakse Dalum (1):
Added missing button range for pad on CTH-680
git tag: 1.6.901
https://www.freedesktop.org/software/libinput/libinput-1.6.901.tar.xz
MD5: 8298e8f90796e19964f07d952c704572 libinput-1.6.901.tar.xz
SHA1: 5f3709c44699f8ab5a77483820adc6d8a34228ff libinput-1.6.901.tar.xz
SHA256: c2353859c24ccd3beec228c3f1480fcc5be14ef465fa438162a31adee1e3792c libinput-1.6.901.tar.xz
PGP: https://www.freedesktop.org/software/libinput/libinput-1.6.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/20170223/53fa4100/attachment-0001.sig>
More information about the wayland-devel
mailing list