xinput: rep ChangeKeyboardDevice.status: altenum to enum
[free-sw/xcb/proto] / src / xinput.xml
index cd1a397..51a5a5d 100644 (file)
@@ -89,6 +89,17 @@ authorization from the authors.
         <item name="Proximity"> <value>4</value> </item>
         <item name="Focus">     <value>5</value> </item>
         <item name="Other">     <value>6</value> </item>
+        <!--
+               value Attach=7 is still contained in XI.h as "#define AttachClass"
+               but it was never transmitted over the protocol.
+               (It was used to tag a fake class created by libXi).
+
+               Even the creation of that fake class has been dropped
+               from libXi in 2009 by the following change:
+               http://cgit.freedesktop.org/xorg/lib/libXi/commit/?id=62858c426e6de1b99df660251737233afd335302
+
+               <item name="Attach">    <value>7</value> </item>
+        -->
     </enum>
 
     <enum name="ValuatorMode">
@@ -179,6 +190,7 @@ authorization from the authors.
             <list type="InputClassInfo" name="class_info">
                 <fieldref>num_classes</fieldref>
             </list>
+            <pad align="4" />
         </reply>
     </request>
 
@@ -266,7 +278,7 @@ authorization from the authors.
 
     <struct name="DeviceTimeCoord">
         <field type="TIMESTAMP" name="time" />
-        <!-- Uninterpreted: list (axisvalues) of CARD32,
+        <!-- Uninterpreted: list (axisvalues) of INT32,
                             length is num_axes from GetDeviceMotionEvents -->
     </struct>
 
@@ -274,6 +286,7 @@ authorization from the authors.
         <field type="TIMESTAMP" name="start" />
         <field type="TIMESTAMP" name="stop" altenum="Time" />
         <field type="CARD8"     name="device_id" />
+        <pad bytes="3"/>
         <reply>
             <pad bytes="1" />
             <field type="CARD32" name="num_events" />
@@ -291,7 +304,10 @@ authorization from the authors.
         <pad bytes="3" />
         <reply>
             <pad bytes="1" />
-            <field type="CARD8" name="status" altenum="GrabStatus" />
+            <!-- only the following GrabStatus-values are valid here:
+                 "Success", "AlreadyGrabbed", and "Frozen"
+            -->
+            <field type="CARD8" name="status" enum="GrabStatus" />
             <pad bytes="23" />
         </reply>
     </request>
@@ -336,6 +352,7 @@ authorization from the authors.
     <request name="UngrabDevice" opcode="14">
         <field type="TIMESTAMP" name="time" altenum="Time" />
         <field type="CARD8"     name="device_id" />
+        <pad bytes="3" />
     </request>
 
     <!-- GrabDeviceKey -->
@@ -377,7 +394,7 @@ authorization from the authors.
         <field type="CARD8"  name="this_device_mode" enum="GrabMode" />
         <field type="CARD8"  name="other_device_mode" enum="GrabMode" />
         <field type="CARD8"  name="button" altenum="Grab" />
-        <field type="CARD8"  name="owner_events" />
+        <field type="BOOL"   name="owner_events" />
         <pad bytes="2" />
         <list type="EventClass" name="classes">
             <fieldref>num_classes</fieldref>
@@ -392,23 +409,25 @@ authorization from the authors.
         <field type="CARD8"  name="modifier_device" />
         <field type="CARD8"  name="button" altenum="Grab" />
         <field type="CARD8"  name="grabbed_device" />
+        <pad bytes="3" />
     </request>
 
     <!-- AllowDeviceEvents -->
 
     <enum name="DeviceInputMode">
-        <item name="AsyncThisDevice" />
-        <item name="SyncThisDevice" />
-        <item name="ReplayThisDevice" />
-        <item name="AsyncOtherDevices" />
-        <item name="AsyncAll" />
-        <item name="SyncAll" />
+        <item name="AsyncThisDevice">   <value>0</value> </item>
+        <item name="SyncThisDevice">    <value>1</value> </item>
+        <item name="ReplayThisDevice">  <value>2</value> </item>
+        <item name="AsyncOtherDevices"> <value>3</value> </item>
+        <item name="AsyncAll">          <value>4</value> </item>
+        <item name="SyncAll">           <value>5</value> </item>
     </enum>
 
     <request name="AllowDeviceEvents" opcode="19">
         <field type="TIMESTAMP" name="time" altenum="Time" />
         <field type="CARD8"     name="mode" enum="DeviceInputMode" />
         <field type="CARD8"     name="device_id" />
+        <pad bytes="2" />
     </request>
 
     <!-- GetDeviceFocus -->
@@ -432,17 +451,18 @@ authorization from the authors.
         <field type="TIMESTAMP" name="time" altenum="Time" />
         <field type="CARD8"     name="revert_to" enum="InputFocus" />
         <field type="CARD8"     name="device_id" />
+        <pad bytes="2" />
     </request>
 
     <!-- GetFeedbackControl -->
 
     <enum name="FeedbackClass">
-        <item name="Keyboard" />
-        <item name="Pointer" />
-        <item name="String" />
-        <item name="Integer" />
-        <item name="Led" />
-        <item name="Bell" />
+        <item name="Keyboard"> <value>0</value> </item>
+        <item name="Pointer">  <value>1</value> </item>
+        <item name="String">   <value>2</value> </item>
+        <item name="Integer">  <value>3</value> </item>
+        <item name="Led">      <value>4</value> </item>
+        <item name="Bell">     <value>5</value> </item>
     </enum>
 
     <struct name="KbdFeedbackState">
@@ -613,6 +633,7 @@ authorization from the authors.
         <field type="CARD32"      name="mask" />
         <field type="CARD8"       name="device_id" />
         <field type="CARD8"       name="feedback_id" />
+        <pad bytes="2" />
         <field type="FeedbackCtl" name="feedback" />
     </request>
 
@@ -622,6 +643,7 @@ authorization from the authors.
         <field type="CARD8"   name="device_id" />
         <field type="KeyCode" name="first_keycode" />
         <field type="CARD8"   name="count" />
+        <pad bytes="1" />
         <reply>
             <pad bytes="1" />
             <field type="CARD8" name="keysyms_per_keycode" />
@@ -671,7 +693,7 @@ authorization from the authors.
     <request name="SetDeviceModifierMapping" opcode="27">
         <field type="CARD8" name="device_id" />
         <field type="CARD8" name="keycodes_per_modifier" />
-        <pad bytes="1" />
+        <pad bytes="2" />
         <list type="CARD8" name="keymaps">
             <op op="*">
                 <fieldref>keycodes_per_modifier</fieldref>
@@ -697,6 +719,7 @@ authorization from the authors.
             <list type="CARD8" name="map">
                 <fieldref>map_size</fieldref>
             </list>
+            <pad align="4" />
         </reply>
     </request>
 
@@ -914,6 +937,7 @@ authorization from the authors.
         <field type="CARD16" name="len" />
         <field type="CARD8"  name="first_valuator" />
         <field type="CARD8"  name="num_valuators" />
+        <pad bytes="2" />
         <list type="CARD32"  name="resolution_values">
             <fieldref>num_valuators</fieldref>
         </list>
@@ -1000,7 +1024,7 @@ authorization from the authors.
     <!-- ChangeDeviceProperty -->
 
     <enum name="PropertyFormat">
-        <item name="8Bits">  <value> 8</value> </item>
+        <item name="8Bits">  <value>8</value> </item>
         <item name="16Bits"> <value>16</value> </item>
         <item name="32Bits"> <value>32</value> </item>
     </enum>
@@ -1024,12 +1048,14 @@ authorization from the authors.
                 <list type="CARD8" name="data8">
                     <fieldref>num_items</fieldref>
                 </list>
+                <pad align="4" />
             </bitcase>
             <bitcase>
                 <enumref ref="PropertyFormat">16Bits</enumref>
                 <list type="CARD16" name="data16">
                     <fieldref>num_items</fieldref>
                 </list>
+                <pad align="4" />
             </bitcase>
             <bitcase>
                 <enumref ref="PropertyFormat">32Bits</enumref>
@@ -1077,12 +1103,14 @@ authorization from the authors.
                     <list type="CARD8" name="data8">
                         <fieldref>num_items</fieldref>
                     </list>
+                    <pad align="4" />
                 </bitcase>
                 <bitcase>
                     <enumref ref="PropertyFormat">16Bits</enumref>
                     <list type="CARD16" name="data16">
                         <fieldref>num_items</fieldref>
                     </list>
+                    <pad align="4" />
                 </bitcase>
                 <bitcase>
                     <enumref ref="PropertyFormat">32Bits</enumref>
@@ -1099,8 +1127,8 @@ authorization from the authors.
     <!-- XIQueryPointer -->
 
     <enum name="Device">
-        <item name="All" />
-        <item name="AllMaster" />
+        <item name="All">       <value>0</value> </item>
+        <item name="AllMaster"> <value>1</value> </item>
     </enum>
 
     <struct name="GroupInfo">
@@ -1129,7 +1157,7 @@ authorization from the authors.
             <field type="FP1616"       name="root_y" />
             <field type="FP1616"       name="win_x" />
             <field type="FP1616"       name="win_y" />
-            <field type="CARD8"        name="same_screen" />
+            <field type="BOOL"         name="same_screen" />
             <pad bytes="1" />
             <field type="CARD16"       name="buttons_len" />
             <field type="ModifierInfo" name="mods" />
@@ -1182,11 +1210,12 @@ authorization from the authors.
         <field type="CARD16" name="type" enum="HierarchyChangeType" />
         <field type="CARD16" name="len" />
         <field type="CARD16" name="name_len" />
-        <field type="CARD8"  name="send_core" />
-        <field type="CARD8"  name="enable" />
+        <field type="BOOL"   name="send_core" />
+        <field type="BOOL"   name="enable" />
         <list type="char" name="name">
             <fieldref>name_len</fieldref>
         </list>
+        <pad align="4" />
     </struct>
 
     <struct name="RemoveMaster">
@@ -1229,6 +1258,7 @@ authorization from the authors.
 
     <request name="XIChangeHierarchy" opcode="43">
         <field type="CARD8" name="num_changes" />
+        <pad bytes="3" />
         <list type="HierarchyChange" name="changes">
             <fieldref>num_changes</fieldref>
         </list>
@@ -1257,10 +1287,42 @@ authorization from the authors.
 
     <!-- XISelectEvents -->
 
+    <enum name="XIEventMask">
+        <item name="DeviceChanged">    <bit>1</bit> </item>
+        <item name="KeyPress">         <bit>2</bit> </item>
+        <item name="KeyRelease">       <bit>3</bit> </item>
+        <item name="ButtonPress">      <bit>4</bit> </item>
+        <item name="ButtonRelease">    <bit>5</bit> </item>
+        <item name="Motion">           <bit>6</bit> </item>
+        <item name="Enter">            <bit>7</bit> </item>
+        <item name="Leave">            <bit>8</bit> </item>
+        <item name="FocusIn">          <bit>9</bit> </item>
+        <item name="FocusOut">         <bit>10</bit> </item>
+        <item name="Hierarchy">        <bit>11</bit> </item>
+        <item name="Property">         <bit>12</bit> </item>
+        <!-- ⋅⋅⋅ Events (v2.1) ⋅⋅⋅ -->
+        <item name="RawKeyPress">      <bit>13</bit> </item>
+        <item name="RawKeyRelease">    <bit>14</bit> </item>
+        <item name="RawButtonPress">   <bit>15</bit> </item>
+        <item name="RawButtonRelease"> <bit>16</bit> </item>
+        <item name="RawMotion">        <bit>17</bit> </item>
+        <!-- ⋅⋅⋅ Events (v2.2) ⋅⋅⋅ -->
+        <item name="TouchBegin">       <bit>18</bit> </item>
+        <item name="TouchUpdate">      <bit>19</bit> </item>
+        <item name="TouchEnd">         <bit>20</bit> </item>
+        <item name="TouchOwnership">   <bit>21</bit> </item>
+        <item name="RawTouchBegin">    <bit>22</bit> </item>
+        <item name="RawTouchUpdate">   <bit>23</bit> </item>
+        <item name="RawTouchEnd">      <bit>24</bit> </item>
+        <!-- ⋅⋅⋅ Events (v2.3) ⋅⋅⋅ -->
+        <item name="BarrierHit">       <bit>25</bit> </item>
+        <item name="BarrierLeave">     <bit>26</bit> </item>
+    </enum>
+
     <struct name="EventMask">
         <field type="DeviceId" name="deviceid" altenum="Device" />
         <field type="CARD16"   name="mask_len" />
-        <list type="CARD32" name="mask"> <!-- set of EventMaskBit -->
+        <list type="CARD32" name="mask" mask="XIEventMask">
             <fieldref>mask_len</fieldref>
         </list>
     </struct>
@@ -1463,8 +1525,8 @@ authorization from the authors.
     <!-- XIGrabDevice -->
 
     <enum name="GrabOwner">
-        <item name="NoOwner" />
-        <item name="Owner" />
+        <item name="NoOwner"> <value>0</value> </item>
+        <item name="Owner">   <value>1</value> </item>
     </enum>
 
     <request name="XIGrabDevice" opcode="51">
@@ -1498,14 +1560,14 @@ authorization from the authors.
     <!-- XIAllowEvents -->
 
     <enum name="EventMode">
-        <item name="AsyncDevice" />
-        <item name="SyncDevice" />
-        <item name="ReplayDevice" />
-        <item name="AsyncPairedDevice" />
-        <item name="AsyncPair" />
-        <item name="SyncPair" />
-        <item name="AcceptTouch" />
-        <item name="RejectTouch" />
+        <item name="AsyncDevice">       <value>0</value> </item>
+        <item name="SyncDevice">        <value>1</value> </item>
+        <item name="ReplayDevice">      <value>2</value> </item>
+        <item name="AsyncPairedDevice"> <value>3</value> </item>
+        <item name="AsyncPair">         <value>4</value> </item>
+        <item name="SyncPair">          <value>5</value> </item>
+        <item name="AcceptTouch">       <value>6</value> </item>
+        <item name="RejectTouch">       <value>7</value> </item>
     </enum>
 
     <request name="XIAllowEvents" opcode="53">
@@ -1520,17 +1582,17 @@ authorization from the authors.
     <!-- XIPassiveGrabDevice -->
 
     <enum name="GrabMode22">
-        <item name="Sync" />
-        <item name="Async" />
-        <item name="Touch" />
+        <item name="Sync">  <value>0</value> </item>
+        <item name="Async"> <value>1</value> </item>
+        <item name="Touch"> <value>2</value> </item>
     </enum>
 
     <enum name="GrabType">
-        <item name="Button" />
-        <item name="Keycode" />
-        <item name="Enter" />
-        <item name="FocusIn" />
-        <item name="TouchBegin" />
+        <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>
     </enum>
 
     <enum name="ModifierMask">
@@ -1673,12 +1735,14 @@ authorization from the authors.
                     <list type="CARD8" name="data8">
                         <fieldref>num_items</fieldref>
                     </list>
+                    <pad align="4" />
                 </bitcase>
                 <bitcase>
                     <enumref ref="PropertyFormat">16Bits</enumref>
                     <list type="CARD16" name="data16">
                         <fieldref>num_items</fieldref>
                     </list>
+                    <pad align="4" />
                 </bitcase>
                 <bitcase>
                     <enumref ref="PropertyFormat">32Bits</enumref>
@@ -1758,10 +1822,10 @@ authorization from the authors.
     <eventcopy name="DeviceMotionNotify"  number="5" ref="DeviceKeyPress" />
 
     <event name="DeviceFocusIn" number="6">
-        <field type="BYTE"      name="detail" enum="NotifyDetail" />
+        <field type="BYTE"      name="detail" enum="xproto:NotifyDetail" />
         <field type="TIMESTAMP" name="time" />
         <field type="WINDOW"    name="window" />
-        <field type="BYTE"      name="mode" enum="NotifyMode" />
+        <field type="BYTE"      name="mode" enum="xproto:NotifyMode" />
         <field type="CARD8"     name="device_id" />
         <pad bytes="18" />
     </event>
@@ -1822,12 +1886,12 @@ authorization from the authors.
     <!-- ⋅⋅⋅ Events (v1.4) ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ -->
 
     <enum name="DeviceChange">
-        <item name="Added" />
-        <item name="Removed" />
-        <item name="Enabled" />
-        <item name="Disabled" />
-        <item name="Unrecoverable" />
-        <item name="ControlChanged" />
+        <item name="Added">          <value>0</value> </item>
+        <item name="Removed">        <value>1</value> </item>
+        <item name="Enabled">        <value>2</value> </item>
+        <item name="Disabled">       <value>3</value> </item>
+        <item name="Unrecoverable">  <value>4</value> </item>
+        <item name="ControlChanged"> <value>5</value> </item>
     </enum>
 
     <event name="DevicePresenceNotify" number="15">
@@ -1947,23 +2011,23 @@ authorization from the authors.
     <eventcopy name="Motion"        number="6" ref="ButtonPress" />
 
     <enum name="NotifyMode">
-        <item name="Normal" />
-        <item name="Grab" />
-        <item name="Ungrab" />
-        <item name="WhileGrabbed" />
-        <item name="PassiveGrab" />
-        <item name="PassiveUngrab" />
+        <item name="Normal">        <value>0</value> </item>
+        <item name="Grab">          <value>1</value> </item>
+        <item name="Ungrab">        <value>2</value> </item>
+        <item name="WhileGrabbed">  <value>3</value> </item>
+        <item name="PassiveGrab">   <value>4</value> </item>
+        <item name="PassiveUngrab"> <value>5</value> </item>
     </enum>
 
     <enum name="NotifyDetail">
-        <item name="Ancestor" />
-        <item name="Virtual" />
-        <item name="Inferior" />
-        <item name="Nonlinear" />
-        <item name="NonlinearVirtual" />
-        <item name="Pointer" />
-        <item name="PointerRoot" />
-        <item name="None" />
+        <item name="Ancestor">         <value>0</value> </item>
+        <item name="Virtual">          <value>1</value> </item>
+        <item name="Inferior">         <value>2</value> </item>
+        <item name="Nonlinear">        <value>3</value> </item>
+        <item name="NonlinearVirtual"> <value>4</value> </item>
+        <item name="Pointer">          <value>5</value> </item>
+        <item name="PointerRoot">      <value>6</value> </item>
+        <item name="None">             <value>7</value> </item>
     </enum>
 
     <event name="Enter" number="7" xge="true">
@@ -1971,8 +2035,8 @@ authorization from the authors.
         <field type="TIMESTAMP" name="time" altenum="Time" />
         <!-- event specific fields -->
         <field type="DeviceId"  name="sourceid" altenum="Device" />
-        <field type="CARD8"     name="mode" enum="NotifyMode" />
-        <field type="CARD8"     name="detail" enum="NotifyDetail" />
+        <field type="CARD8"     name="mode" enum="xinput:NotifyMode" />
+        <field type="CARD8"     name="detail" enum="xinput:NotifyDetail" />
         <field type="WINDOW"    name="root" />
         <field type="WINDOW"    name="event" />
         <field type="WINDOW"    name="child" />
@@ -1981,8 +2045,8 @@ authorization from the authors.
         <field type="FP1616"       name="root_y" />
         <field type="FP1616"       name="event_x" />
         <field type="FP1616"       name="event_y" />
-        <field type="CARD8"        name="same_screen" />
-        <field type="CARD8"        name="focus" />
+        <field type="BOOL"         name="same_screen" />
+        <field type="BOOL"         name="focus" />
         <field type="CARD16"       name="buttons_len" />
         <field type="ModifierInfo" name="mods" />
         <field type="GroupInfo"    name="group" />
@@ -2029,9 +2093,9 @@ authorization from the authors.
     </event>
 
     <enum name="PropertyFlag">
-        <item name="Deleted" />
-        <item name="Created" />
-        <item name="Modified" />
+        <item name="Deleted">  <value>0</value> </item>
+        <item name="Created">  <value>1</value> </item>
+        <item name="Modified"> <value>2</value> </item>
     </enum>
 
     <event name="Property" number="12" xge="true">
@@ -2131,7 +2195,7 @@ authorization from the authors.
 
     <enum name="TouchOwnershipFlags">
         <!-- XXX: Remove this enum? Currently, no flag is defined. -->
-        <item name="None" />
+        <item name="None"> <value>0</value> </item>
     </enum>
 
     <event name="TouchOwnership" number="21" xge="true">