protocol: add the wl_pointer.axis_value120 events

These events are for high-resolution wheels. Each logical wheel click
represents an axis value120 value of 120, fractions of a wheel click an
integer fraction thereof. The new event replaces
wl_pointer.axis_discrete for wl_pointer versions 8 and above.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
Peter Hutterer 2020-03-31 13:47:04 +10:00 committed by Simon Ser
parent 79c84ed3f1
commit 868eb99eb0

View File

@ -1787,7 +1787,7 @@
</request>
</interface>
<interface name="wl_seat" version="7">
<interface name="wl_seat" version="8">
<description summary="group of input devices">
A seat is a group of keyboards, pointer and touch devices. This
object is published as a global during start up, or when such a
@ -1920,7 +1920,7 @@
</interface>
<interface name="wl_pointer" version="7">
<interface name="wl_pointer" version="8">
<description summary="pointer input device">
The wl_pointer interface represents one or more input devices,
such as mice, which control the pointer location and pointer_focus
@ -2220,6 +2220,9 @@
This event carries the axis value of the wl_pointer.axis event in
discrete steps (e.g. mouse wheel clicks).
This event is deprecated with wl_pointer version 8 - this event is not
sent to clients supporting version 8 or later.
This event does not occur on its own, it is coupled with a
wl_pointer.axis event that represents this axis value on a
continuous scale. The protocol guarantees that each axis_discrete
@ -2245,9 +2248,37 @@
<arg name="axis" type="uint" enum="axis" summary="axis type"/>
<arg name="discrete" type="int" summary="number of steps"/>
</event>
<event name="axis_value120" since="8">
<description summary="axis high-resolution scroll event">
Discrete high-resolution scroll information.
This event carries high-resolution wheel scroll information,
with each multiple of 120 representing one logical scroll step
(a wheel detent). For example, an axis_value120 of 30 is one quarter of
a logical scroll step in the positive direction, a value120 of
-240 are two logical scroll steps in the negative direction within the
same hardware event.
Clients that rely on discrete scrolling should accumulate the
value120 to multiples of 120 before processing the event.
The value120 must not be zero.
This event replaces the wl_pointer.axis_discrete event in clients
supporting wl_pointer version 8 or later.
Where a wl_pointer.axis_source event occurs in the same
wl_pointer.frame, the axis source applies to this event.
The order of wl_pointer.axis_value120 and wl_pointer.axis_source is
not guaranteed.
</description>
<arg name="axis" type="uint" enum="axis" summary="axis type"/>
<arg name="value120" type="int" summary="scroll distance as fraction of 120"/>
</event>
</interface>
<interface name="wl_keyboard" version="7">
<interface name="wl_keyboard" version="8">
<description summary="keyboard input device">
The wl_keyboard interface represents one or more keyboards
associated with a seat.
@ -2374,7 +2405,7 @@
</event>
</interface>
<interface name="wl_touch" version="7">
<interface name="wl_touch" version="8">
<description summary="touchscreen input device">
The wl_touch interface represents a touchscreen
associated with a seat.