<item name="3"> <bit>5</bit></item>
<item name="4"> <bit>6</bit></item>
<item name="5"> <bit>7</bit></item>
+ <item name="Any"> <bit>15</bit></item>
+ </enum>
+
+ <enum name="KeyButMask">
+ <item name="Shift"> <bit>0</bit></item>
+ <item name="Lock"> <bit>1</bit></item>
+ <item name="Control"><bit>2</bit></item>
+ <item name="Mod1"> <bit>3</bit></item>
+ <item name="Mod2"> <bit>4</bit></item>
+ <item name="Mod3"> <bit>5</bit></item>
+ <item name="Mod4"> <bit>6</bit></item>
+ <item name="Mod5"> <bit>7</bit></item>
+ <item name="Button1"><bit>8</bit></item>
+ <item name="Button2"><bit>9</bit></item>
+ <item name="Button3"><bit>10</bit></item>
+ <item name="Button4"><bit>11</bit></item>
+ <item name="Button5"><bit>12</bit></item>
</enum>
<event name="KeyPress" number="2">
<field type="INT16" name="root_y" />
<field type="INT16" name="event_x" />
<field type="INT16" name="event_y" />
- <field type="CARD16" name="state" />
+ <field type="CARD16" name="state" mask="KeyButMask" />
<field type="BOOL" name="same_screen" />
<pad bytes="1" />
</event>
<field type="INT16" name="root_y" />
<field type="INT16" name="event_x" />
<field type="INT16" name="event_y" />
- <field type="CARD16" name="state" />
+ <field type="CARD16" name="state" mask="KeyButMask" />
<field type="BOOL" name="same_screen" />
<pad bytes="1" />
</event>
<field type="INT16" name="root_y" />
<field type="INT16" name="event_x" />
<field type="INT16" name="event_y" />
- <field type="CARD16" name="state" />
+ <field type="CARD16" name="state" mask="KeyButMask" />
<field type="BOOL" name="same_screen" />
<pad bytes="1" />
</event>
<field type="INT16" name="root_y" />
<field type="INT16" name="event_x" />
<field type="INT16" name="event_y" />
- <field type="CARD16" name="state" />
+ <field type="CARD16" name="state" mask="KeyButMask" />
<field type="BYTE" name="mode" enum="NotifyMode" />
<field type="BYTE" name="same_screen_focus" />
</event>
<field type="ATOM" name="selection" />
</event>
+ <enum name="Time">
+ <item name="CurrentTime"> <value>0</value> </item>
+ </enum>
+
<event name="SelectionRequest" number="30">
<pad bytes="1" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
<field type="WINDOW" name="owner" />
<field type="WINDOW" name="requestor" />
<field type="ATOM" name="selection" />
<event name="SelectionNotify" number="31">
<pad bytes="1" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
<field type="WINDOW" name="requestor" />
<field type="ATOM" name="selection" />
<field type="ATOM" name="target" />
<field type="BOOL" name="delete" />
<field type="WINDOW" name="window" />
<field type="ATOM" name="property" />
- <field type="ATOM" name="type" enum="GetPropertyType" />
+ <field type="ATOM" name="type" altenum="GetPropertyType" />
<field type="CARD32" name="long_offset" />
<field type="CARD32" name="long_length" />
<reply>
<pad bytes="1" />
<field type="WINDOW" name="owner" />
<field type="ATOM" name="selection" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<request name="GetSelectionOwner" opcode="23">
<field type="ATOM" name="selection" />
<field type="ATOM" name="target" />
<field type="ATOM" name="property" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<enum name="SendEventDest">
<request name="SendEvent" opcode="25">
<field type="BOOL" name="propagate" />
- <field type="WINDOW" name="destination" />
+ <field type="WINDOW" name="destination" altenum="SendEventDest" />
<field type="CARD32" name="event_mask" mask="EventMask" />
<list type="char" name="event"><value>32</value></list>
</request>
<field type="BYTE" name="keyboard_mode" enum="GrabMode" />
<field type="WINDOW" name="confine_to" />
<field type="CURSOR" name="cursor" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
<reply>
<field type="BYTE" name="status" enum="GrabStatus" />
</reply>
<request name="UngrabPointer" opcode="27">
<pad bytes="1" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<enum name="ButtonIndex">
<request name="ChangeActivePointerGrab" opcode="30">
<pad bytes="1" />
<field type="CURSOR" name="cursor" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
<field type="CARD16" name="event_mask" mask="EventMask" />
<pad bytes="2" />
</request>
<request name="GrabKeyboard" opcode="31">
<field type="BOOL" name="owner_events" />
<field type="WINDOW" name="grab_window" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
<field type="BYTE" name="pointer_mode" enum="GrabMode" />
<field type="BYTE" name="keyboard_mode" enum="GrabMode" />
<pad bytes="2" />
<request name="UngrabKeyboard" opcode="32">
<pad bytes="1" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<!-- Use KEYCODE any = { XCBGrabAny }; to grab any key -->
<field type="BOOL" name="owner_events" />
<field type="WINDOW" name="grab_window" />
<field type="CARD16" name="modifiers" mask="ModMask" />
- <field type="KEYCODE" name="key" />
+ <field type="KEYCODE" name="key" altenum="Grab" />
<field type="CARD8" name="pointer_mode" enum="GrabMode" />
<field type="CARD8" name="keyboard_mode" enum="GrabMode" />
<pad bytes="3" />
</request>
<request name="UngrabKey" opcode="34">
- <field type="KEYCODE" name="key" />
+ <field type="KEYCODE" name="key" altenum="Grab" />
<field type="WINDOW" name="grab_window" />
<field type="CARD16" name="modifiers" mask="ModMask" />
<pad bytes="2" />
<request name="AllowEvents" opcode="35">
<field type="CARD8" name="mode" enum="Allow" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<request name="GrabServer" opcode="36" />
<field type="INT16" name="root_y" />
<field type="INT16" name="win_x" />
<field type="INT16" name="win_y" />
- <field type="CARD16" name="mask" />
+ <field type="CARD16" name="mask" mask="KeyButMask" />
<pad bytes="2" />
</reply>
</request>
<request name="GetMotionEvents" opcode="39">
<pad bytes="1" />
<field type="WINDOW" name="window" />
- <field type="TIMESTAMP" name="start" />
- <field type="TIMESTAMP" name="stop" />
+ <field type="TIMESTAMP" name="start" altenum="Time" />
+ <field type="TIMESTAMP" name="stop" altenum="Time" />
<reply>
<pad bytes="1" />
<field type="CARD32" name="events_len" />
<request name="SetInputFocus" opcode="42">
<field type="CARD8" name="revert_to" enum="InputFocus" />
- <field type="WINDOW" name="focus" />
- <field type="TIMESTAMP" name="time" />
+ <field type="WINDOW" name="focus" altenum="InputFocus" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<request name="GetInputFocus" opcode="43">
<reply>
<field type="CARD8" name="revert_to" enum="InputFocus" />
- <field type="WINDOW" name="focus" />
+ <field type="WINDOW" name="focus" altenum="InputFocus" />
</reply>
</request>
<request name="KillClient" opcode="113">
<pad bytes="1" />
- <field type="CARD32" name="resource" enum="Kill" />
+ <field type="CARD32" name="resource" altenum="Kill" />
</request>
<request name="RotateProperties" opcode="114">