mirror of
https://gitlab.freedesktop.org/xorg/proto/xcbproto.git
synced 2025-12-20 04:40:09 +01:00
xinput: Add XI v2.4
XInput 2.4 introduces touchpad gesture support which includes 6 new
events: Gesture{Pinch,Swipe}{Begin,Update,End}.
This commit is contained in:
parent
f0db8b7d31
commit
151ee69847
1 changed files with 88 additions and 6 deletions
|
|
@ -33,7 +33,7 @@ authorization from the authors.
|
|||
-->
|
||||
|
||||
<xcb header="xinput" extension-xname="XInputExtension" extension-name="Input"
|
||||
major-version="2" minor-version="3">
|
||||
major-version="2" minor-version="4">
|
||||
<import>xfixes</import>
|
||||
<import>xproto</import>
|
||||
|
||||
|
|
@ -1601,6 +1601,7 @@ authorization from the authors.
|
|||
<item name="Valuator"> <value>2</value> </item>
|
||||
<item name="Scroll"> <value>3</value> </item>
|
||||
<item name="Touch"> <value>8</value> </item>
|
||||
<item name="Gesture"> <value>9</value> </item>
|
||||
</enum>
|
||||
|
||||
<enum name="DeviceType">
|
||||
|
|
@ -1674,6 +1675,14 @@ authorization from the authors.
|
|||
<field type="CARD8" name="num_touches" />
|
||||
</struct>
|
||||
|
||||
<struct name="GestureClass">
|
||||
<field type="CARD16" name="type" enum="DeviceClassType" />
|
||||
<field type="CARD16" name="len" />
|
||||
<field type="DeviceId" name="sourceid" />
|
||||
<field type="CARD8" name="num_touches" />
|
||||
<pad bytes="1" />
|
||||
</struct>
|
||||
|
||||
<struct name="ValuatorClass">
|
||||
<field type="CARD16" name="type" enum="DeviceClassType" />
|
||||
<field type="CARD16" name="len" />
|
||||
|
|
@ -1752,6 +1761,11 @@ authorization from the authors.
|
|||
<field type="CARD8" name="mode" enum="TouchMode" />
|
||||
<field type="CARD8" name="num_touches" />
|
||||
</case>
|
||||
<case name="gesture">
|
||||
<enumref ref="DeviceClassType">Gesture</enumref>
|
||||
<field type="CARD8" name="num_touches" />
|
||||
<pad bytes="1" />
|
||||
</case>
|
||||
</switch>
|
||||
</struct>
|
||||
|
||||
|
|
@ -1872,11 +1886,13 @@ authorization from the authors.
|
|||
</enum>
|
||||
|
||||
<enum name="GrabType">
|
||||
<item name="Button"> <value>0</value> </item>
|
||||
<item name="Keycode"> <value>1</value> </item>
|
||||
<item name="Enter"> <value>2</value> </item>
|
||||
<item name="FocusIn"> <value>3</value> </item>
|
||||
<item name="TouchBegin"> <value>4</value> </item>
|
||||
<item name="Button"> <value>0</value> </item>
|
||||
<item name="Keycode"> <value>1</value> </item>
|
||||
<item name="Enter"> <value>2</value> </item>
|
||||
<item name="FocusIn"> <value>3</value> </item>
|
||||
<item name="TouchBegin"> <value>4</value> </item>
|
||||
<item name="GesturePinchBegin"> <value>5</value> </item>
|
||||
<item name="GestureSwipeBegin"> <value>6</value> </item>
|
||||
</enum>
|
||||
|
||||
<enum name="ModifierMask">
|
||||
|
|
@ -2610,6 +2626,72 @@ authorization from the authors.
|
|||
|
||||
<eventcopy name="BarrierLeave" number="26" ref="BarrierHit" />
|
||||
|
||||
<!-- ⋅⋅⋅ Events (v2.4) ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ -->
|
||||
|
||||
<enum name="GesturePinchEventFlags">
|
||||
<item name="GesturePinchCancelled"> <bit>0</bit> </item>
|
||||
</enum>
|
||||
|
||||
<event name="GesturePinchBegin" number="27" xge="true">
|
||||
<field type="DeviceId" name="deviceid" altenum="Device" />
|
||||
<field type="TIMESTAMP" name="time" altenum="Time" />
|
||||
<!-- event specific fields -->
|
||||
<field type="CARD32" name="detail" />
|
||||
<field type="WINDOW" name="root" />
|
||||
<field type="WINDOW" name="event" />
|
||||
<field type="WINDOW" name="child" />
|
||||
<!-- 32 byte boundary -->
|
||||
<field type="FP1616" name="root_x" />
|
||||
<field type="FP1616" name="root_y" />
|
||||
<field type="FP1616" name="event_x" />
|
||||
<field type="FP1616" name="event_y" />
|
||||
<field type="FP1616" name="delta_x" />
|
||||
<field type="FP1616" name="delta_y" />
|
||||
<field type="FP1616" name="delta_unaccel_x" />
|
||||
<field type="FP1616" name="delta_unaccel_y" />
|
||||
<field type="FP1616" name="scale" />
|
||||
<field type="FP1616" name="delta_angle" />
|
||||
<field type="DeviceId" name="sourceid" altenum="Device" />
|
||||
<pad bytes="2" />
|
||||
<field type="ModifierInfo" name="mods" />
|
||||
<field type="GroupInfo" name="group" />
|
||||
<field type="CARD32" name="flags" mask="GesturePinchEventFlags" />
|
||||
</event>
|
||||
|
||||
<eventcopy name="GesturePinchUpdate" number="28" ref="GesturePinchBegin" />
|
||||
<eventcopy name="GesturePinchEnd" number="29" ref="GesturePinchBegin" />
|
||||
|
||||
<enum name="GestureSwipeEventFlags">
|
||||
<item name="GestureSwipeCancelled"> <bit>0</bit> </item>
|
||||
</enum>
|
||||
|
||||
<event name="GestureSwipeBegin" number="30" xge="true">
|
||||
<field type="DeviceId" name="deviceid" altenum="Device" />
|
||||
<field type="TIMESTAMP" name="time" altenum="Time" />
|
||||
<!-- event specific fields -->
|
||||
<field type="CARD32" name="detail" />
|
||||
<field type="WINDOW" name="root" />
|
||||
<field type="WINDOW" name="event" />
|
||||
<field type="WINDOW" name="child" />
|
||||
<!-- 32 byte boundary -->
|
||||
<field type="FP1616" name="root_x" />
|
||||
<field type="FP1616" name="root_y" />
|
||||
<field type="FP1616" name="event_x" />
|
||||
<field type="FP1616" name="event_y" />
|
||||
<field type="FP1616" name="delta_x" />
|
||||
<field type="FP1616" name="delta_y" />
|
||||
<field type="FP1616" name="delta_unaccel_x" />
|
||||
<field type="FP1616" name="delta_unaccel_y" />
|
||||
<field type="DeviceId" name="sourceid" altenum="Device" />
|
||||
<pad bytes="2" />
|
||||
<field type="ModifierInfo" name="mods" />
|
||||
<field type="GroupInfo" name="group" />
|
||||
<field type="CARD32" name="flags" mask="GestureSwipeEventFlags" />
|
||||
</event>
|
||||
|
||||
<eventcopy name="GestureSwipeUpdate" number="31" ref="GestureSwipeBegin" />
|
||||
<eventcopy name="GestureSwipeEnd" number="32" ref="GestureSwipeBegin" />
|
||||
|
||||
<!-- ⋅⋅⋅ Requests that depend on events ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ -->
|
||||
|
||||
<!-- SendExtensionEvent -->
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue