[ANNOUNCE] libinput 1.1.901
Peter Hutterer
peter.hutterer at who-t.net
Wed Jan 27 20:52:21 PST 2016
The first RC for libinput 1.2 is now available.
The main feature merged in this cycle is graphics tablet tool support.
Devices tagged by udev as ID_INPUT_TABLET are handled by libinput now and
exposed with the LIBINPUT_DEVICE_CAP_TABLET_TOOL capability. Note that this
currently only includes tablet tool support, including stylus, eraser,
cursor, lens cursor, etc. The "pad" part of the tablet is not yet
integrated. For documentation on tablet support see these two links:
http://wayland.freedesktop.org/libinput/doc/latest/tablet-support.html
http://wayland.freedesktop.org/libinput/doc/latest/group__event__tablet.html
Further in this release is support for three-finger pinch gestures on
supported hardware. As already announced in 1.1.5, semi-mt touchpads do not
support gesture recognition, the data is not reliable enough.
We still reserve the right to change the new tablet API before the 1.2
release, though we don't expect the need for any changes.
As usual, the git shortlog is below.
Caibin Chen (1):
touchpad: fix DWT pairing for Macbook Pro 2015
Carlos Garnacho (6):
Add LIBINPUT_DEVICE_CAP_TABLET libinput_device_capability value
test: Add infrastructure for testing tablet events.
test: Add Wacom Bamboo 16FG 4x5 Pen device definition
test: Add Wacom Cintiq 12WX device definition
test: Add Wacom Intuos5 touch M Pen device definition
test: Add Wacom ISDv4 E6 Pen device definition
Jason Gerecke (4):
Fix normalization functions
Remove spurious addition from range normalization calculation
evdev: Do not mark tablet touchscreens as tablets
tools: List relative wheel among axis capabilities
Olivier Blin (1):
gitignore: ignore compile script generated by automake >= 1.14
Peter Hutterer (230):
tablet: check the button range before we use it
tablet: rename flags to mask
tablet: use "int32_t", not "signed"
tablet: print invalid evdev types/codes as string for debugging purposes
tools: print tablet axis debugging on one line
tablet: provide x/y by default in mm off the top/left corner
tablet: normalize the distance to 0..1
tablet: ignore pad buttons
tools: explicitly ignore tablet event codes in the event-gui
evdev: fix a broken log message for per-context logging
Add a couple missing @ref tags
tablet: always return 0 for axis values on non-axis events
Fix address for memcpy()
Update libinput_tool_ref/unref() to return the tool object
tablet: copy the axis state into the tablet event
test: add missing BTN_TOOL_ settings to Wacom I5
test: put two warnings into the tablet tests
tablet: initialize all unused dispatch callbacks to NULL
Drop LIBINPUT_TABLET_AXIS_CNT from the public API
Move the tablet functions to the 0.9.0 symbol table
Fix a copy/paste error
test: force the motion test to be axis events only
test: fix a compiler warning about uninitialized variable
tools: print the tablet capability as 'T' in event-debug
Clarify proximity handling for tools always in proximity
Move the tablet APIs into the right library version
tablet: drop LIBINPUT_TABLET_AXIS_NONE from the API
tablet: spell out that we always include all values
Revert "tablet: Add tests for axes on proximity events"
cosmetic: drop double empty lines
test: fix two tablet tests
test: replace a while loop with a litest helper
test: fix double comparison macros
test: add litest_assert_tablet_button_event()
tablet: fix two coding style issues
tablet: drop LIBINPUT_TOOL_NONE from the public API
tablet: de-couple tool enum values from linux/input.h
tablet: document what the tool type means
tablet: add libinput_tool_get_tool_id()
Keep the tablet APIs in a separate symbol version block
tablet: use libwacom to identify tablets for left-handedness
tablet: explicitly ignore ABS_THROTTLE, ABS_RX, ABS_RY, and ABS_RZ
tablet: factor out checking a device for axes
tablet: factor out setting axis bits on a tool
tablet: expand the button mask to allow for BTN_LEFT, RIGHT, MIDDLE
tablet: add support for libinput_tool_has_button
tablet: handle mouse-buttons from a tool
tablet: rely on libwacom to give us the right tablet axes
tablet: support z-rotation for the mouse/lens tool
tablet: support airbrush wheel as slider
tablet: support artpen rotation
tools: print tool capabilities on proximity
tools: only print the tablet axes we have on the tool
tablet: support the rel wheel on the mouse device
tablet: add libinput_tablet_get_axis_delta()
tablet: add libinput_event_tablet_get_axis_delta_discrete()
test: add REL_WHEEL to intuos tablet
test: add tablet wheel test
cosmetic: add missing empty line
tablet: fix tool capability test
doc: add missing @ref tag
tablet: warn if the libwacom context fails to initalize
tools: record the start time before doing anything with libinput
tablet: sync tools already in proximity at startup
tablet: copy distance axis for the mouse/lens cursor devices
doc: document recommended handling of fake proximity events in the caller
Move touch_notify_frame declaration back to the touch_notify group
Handle tablet capability in device_has_cap
tablet: add missing libinput_event_tablet_get_base_event
test: add tablet conversion checks
tools - list-devices: print "tablet" capability
tablet: fix check for rotation axis
test: use the litest macros in the tablet button check
test: skip testing tablet buttons that don't exist on the device
test: print the missing button's name on test failure
test: add a waltop tablet test device
test: disable pointer wheel tests on tablets
tablet: rely on libwacom for the list of axis capabilities
tablet: use libwacom_new_from_path() to handle more tablets
doc: improve the tablet documentation
doc: drop a confusing note
test: add test for partial tablet deltas
test: fix compiler warning about tablet test
test: add test for udev ID_INPUT_TABLET tagging
tablet: add get_time_usec() for tablets, switch to usec
test: add test for the tablet usec API
tablet: widen the serial type to uint64_t
tablet: use require_event_type instead of direct type check
tablet: restrict tablet_axis_has_changed to axis/proximity events
tablet: allow tablet_get_x/y_transformed for proximity events as well
tools: add tablet support to event-gui
tablet: rename all tool types to LIBINPUT_TOOL_TYPE_*
tablet: widen the tool id to 64 bits
tools: print the tool ID in event-debug
test: add printing of tablet events to litest
tablet: clarify tablet axis behavior in regards to proximity
tablet: rename STYLUS_IN_CONTACT to TOOL_IN_CONTACT
test: ensure proximity out coordinates are the ones from the last axis event
tablet: split out tip handling into a separate event
tablet: hook up tip events
test: use the li variable where we have it
tablet: add missing event type checks for tablet events
tablet: allow checking for proximity state on all tablet events
tablet: allow fetching the tip state from any tablet event
tablet: rename libinput_tool to libinput_tablet_tool
tablet: rename libinput_tablet_axis to libinput_tablet_tool_axis
tablet: rename the tablet axes to "LIBINPUT_TABLET_TOOL_AXIS_..."
tablet: rename libinput_tool_type to libinput_tablet_tool_type
tablet: rename TOOL_TYPE to TABLET_TOOL_TYPE
tablet: rename tool_proximity_state to tablet_tool_proximity state
tablet: rename TOOL_PROXIMITY_ to TABLET_TOOL_PROXIMITY
tablet: rename tool_tip_state to tablet_tool_tip_state
tablet: rename TOOL_TIP to TABLET_TOOL_TIP
tablet: rename the tablet capability to a tablet_tool capability
tablet: rename LIBINPUT_EVENT_TABLET to LIBINPUT_EVENT_TABLET_TOOL
tablet: rename libinput_event_tablet to libinput_event_tablet_tool
tablet: rename the libinput_tool calls to libinput_tablet_tool
doc: tablet documentation updates
Whitespace fix
tablet: add two missing curly braces
tablet: break up a condition to improve readability
doc: fix double full stop
test: use the double comparison macros
tablet: drop the tool type 'finger' from the tablet interface
test: add tablet pressure/distance test cases
tablet: drop pressure when either pressure or distance changed
tablet: force the pressure/distance to 0 depending on contact state
evdev: make evdev_transform_absolute available within libinput
tablet: enable the calibration matrix for internal tablets
test: add the HUION PenTablet device
test: change extra axes to take a percentage as well
test: set default axis values for all tablet devices
tablet: add missing tip event to libinput_event_tablet_tool_get_base_event()
test: fix copy/paste error in motion_delta_partial
tools: print the wheel axis delta, not the axis value
test: fix test for tablet rel wheel discrete deltas
test: change tablet matrix test to use absolute x/y values
doc: add missing tablet-axes.svg
tablet: drop unused condition
test: add pressure axes to proximity in for the bamboo and the cintiq
tablet: support tool-specific pressure offsets
doc: a couple of tablet documentation fixes
doc: minor comment clarification
test: use proper proximity events in tablet serial test
test: modernise the tablet tool serial tests a bit
tablet: rename axis_has_changed into an axis-specific API set
tablet: rename axis_get_value into an axis-specific API set
tablet: rename libinput_tablet_tool_has_axis into an axis-specific API set
tablet: reduce event deltas to only apply to the wheel
tablet: remove the libinput_tablet_tool_axis enum from the public API
tablet: add tilt tests
test: move litest_assert_ macros and helpers up to the rest of the defines
test: add litest_axis_set_value helper function
tablet: dump deltas_discrete, replace with a single wheel_discrete variable
tablet: dump deltas, replace it with a single wheel_delta variable
tablet: unroll the tablet axis processing loop
tablet: simplify check for testing if an axis update is needed
tablet: simplify check for testing if an axis update is needed
tablet: store the wheel delta in the normal axes
tablet: split out axis handling into helper functions
tablet: don't mark all axes changed on init
tablet: simplify marking axes as changed
tablet: add libinput_tablet_tool_is_unique()
tablet: invert tilt axes when left-handed is enabled
tablet: drop unused argument from tablet_mark_all_axes_changed
tablet: handle custom proximity handling
test: add two more tests for correct button sequence on proximity
test: use the litest_axis_set_value helper
Add event debugging to libinput_post_event
tablet: split sanitize_tablet_axes up into two helpers
test: fix a bunch of tablet tests to assume, rather than wait for events
tablet: explicitly set the tip state on the proximity event
doc: improve absolute axis documentation a bit
doc: fix and improve the tablet documentation
doc: add missing tip event to the allowed set of events
tablet: insert "STATE" into proximity/tip states
tools: print the button name too, not just the code
doc: fix two grammar issues "of tablet tool" -> "of the tablet tool"
tablet: whitespace fix
tablet: always set the pressure offset
test: fix a bunch of tablet tests for pressure threshold introduction
tablet: add pressure threshold handling
tablet: a tip event can replace an axis event
tablet: don't set a pressure offset of 0
evdev: only reject devices with missing MT x/y if they're MT devices
touchpad: drop outdated comment
touchpad: whitespace fix
doc: add section names to motion normalization subheaders
touchpad: disable MT for elantech semi-mt touchpads
tablet: allow the various get_<axis> on tablet button events
tools: get pressure/distance/tilt from a tip event too
tools: share the axis and tip code where appropriate
tablet: use a struct rather than a double array for axis values
tablet: drop delta array, provided by the tablet_axis struct now
touchpad: drop the model detection - write-only value
test: fix compiler warning
gestures: split direction check out into a helper function
gestures: drop 2fg naming from the various states
touchpad: constify a couple of helper functions
gestures: pass the finger count into pinch events
test: remove leftover debug_trace statement
test: remove a wait loop from the usec gesture test
test: run pinch gesture tests for 2-slot touchpads
touchpad: check fake finger count for validity
test: rearrange fingers for gesture tests
test: change semi-mt 2fg scroll test to use two-finger movement
gestures: add support for three-finger pinch gestures
test: add more gesture tests
gestures: if a finger is 20mm below the other one, assume a pinch gesture
doc: explain the gesture ambiguity for 2-slot touchpads
touchpad: don't try to unhover touches if nothing changed
test: when moving 2 fingers, move them in the same frame
touchpad: disable MT for all semi-mt devices
touchpad: disable gestures for single-finger touchpads
tablet: add support for relative x/y motion deltas
tablet: hook up relative motion events
tools: add support for tablet relative events to the event-gui
test: rename the tap tests suite name to "tap:..."
test: shut up coverity warnings
test: fix uninitialized variable
tablet: fix potential null-pointer dereference
touchpad: remove unused field multitap_last_time
touchpad: remove unused variable
gestures: jump straight to swipe for 3+ finger gestures on ST touchpads
gestures: jump straight to swipe for 3+ finger gestures on ST touchpads
gestures: average motion by active touches, not moved touches
gestures: average motion by active touches, not moved touches
touchpad: add a config option to disable tap-and-drag
Prepare tablet-support branch for merging
configure.ac: libinput 1.2rc1
Stephen Chandler Paul (48):
Add bitfield helper functions from libdevdev-util.h and some tests
evdev: Add basic support for tablet devices
tools: handle TABLET_EVENT_AXIS in event-debug
Add the libinput_tool object
Emit LIBINPUT_TABLET_EVENT_TOOL_UPDATE events on tool changes
tools: handle LIBINPUT_TABLET_EVENT_TOOL_UPDATE in event-debug
Emit LIBINPUT_EVENT_TABLET_PROXIMITY_OUT when tool leaves proximity
tools: Handle LIBINPUT_EVENT_TABLET_PROXIMITY_OUT in event-debug
tablet: Handle button-events
tools: handle tablet button events in event-debug
tablet: Report and normalize distance, pressure, and tilt axes
Sanitize distance and pressure axes before reporting their values
tools: Handle pressure, tilt, and distance in event-debug
test: Add litest_assert_double_*() macros
test: Add proximity tests
test: Add motion event test for tablets
test: Add test for bad distance events
test: Add tests for normalization
tablet: remove parentheses around tablet_(un)set_status
tablet: Clear pressure axis when tool loses contact with the tablet
evdev: Continue updating axes internally when tool leaves proximity
evdev: Add tablet_mark_all_axes_changed()
evdev: Update all axes when the tool comes back into proximity
test: Add tests for serial numbers on tools
tablet: Fix warnings in test/tablet.c
tablet: Stop redundant proximity-out events from being reported
tablet: Remove tablet_notify_tool() and add tablet_get_tool()
tablet: Replace tool-update with proximity-in
tablet: Include tool with all events
tablet: Include axes with all events
tablet: Rename TILT_VERTICAL and TILT_HORIZONTAL to TILT_X and TILT_Y
tablet: Don't swap X and Y in evcode_to_axis()
tablet: fix get_x_transformed() and get_y_transformed()
tablet: Add libinput_tool_get/set_user_data()
tablet: Use separate tool objects for tools without serials
tablet: Add libinput_tool_has_axis() and tests
evdev.c: Return from evdev_configure_device() after configuring a device as a tablet
tablet: Remove leftover-comment
tablet: Set the tool as out of proximity by default when we initialize a tablet
tablet: Add a left handed mode and tests
tablet: Make note of filtering out events while the tool is out of proximity
tablet: Merge PROXIMITY_IN and PROXIMITY_OUT into a single event
event-debug: Increase spacing after the event-type
tablet: Include starting values of axes in proximity events
tablet: Update motion_event_state test to use litest_tablet_motion()
tablet: Add tests for axes on proximity events
tablet: mark all axes as unchanged before the proximity out event
tablet: Add tests for axes on proximity events
git tag: 1.1.901
http://www.freedesktop.org/software/libinput/libinput-1.1.901.tar.xz
MD5: d99b5d1cda21657545faf20de1f4e50b libinput-1.1.901.tar.xz
SHA1: a947b7400a7656089343c1f59064d81fe121c707 libinput-1.1.901.tar.xz
SHA256: e898850f9cd948468a2e7ce560947552b365c836cb6f1451808cdd9e346e70bb libinput-1.1.901.tar.xz
PGP: http://www.freedesktop.org/software/libinput/libinput-1.1.901.tar.xz.sig
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/wayland-devel/attachments/20160128/2a5ab1b1/attachment-0001.sig>
More information about the wayland-devel
mailing list