</list>
</struct>
+ <enum name="EventMask">
+ <item name="NoEvent"> <value>0</value></item>
+ <item name="KeyPress"> <bit>0</bit></item>
+ <item name="KeyRelease"> <bit>1</bit></item>
+ <item name="ButtonPress"> <bit>2</bit></item>
+ <item name="ButtonRelease"> <bit>3</bit></item>
+ <item name="EnterWindow"> <bit>4</bit></item>
+ <item name="LeaveWindow"> <bit>5</bit></item>
+ <item name="PointerMotion"> <bit>6</bit></item>
+ <item name="PointerMotionHint"> <bit>7</bit></item>
+ <item name="Button1Motion"> <bit>8</bit></item>
+ <item name="Button2Motion"> <bit>9</bit></item>
+ <item name="Button3Motion"> <bit>10</bit></item>
+ <item name="Button4Motion"> <bit>11</bit></item>
+ <item name="Button5Motion"> <bit>12</bit></item>
+ <item name="ButtonMotion"> <bit>13</bit></item>
+ <item name="KeymapState"> <bit>14</bit></item>
+ <item name="Exposure"> <bit>15</bit></item>
+ <item name="VisibilityChange"> <bit>16</bit></item>
+ <item name="StructureNotify"> <bit>17</bit></item>
+ <item name="ResizeRedirect"> <bit>18</bit></item>
+ <item name="SubstructureNotify"> <bit>19</bit></item>
+ <item name="SubstructureRedirect"><bit>20</bit></item>
+ <item name="FocusChange"> <bit>21</bit></item>
+ <item name="PropertyChange"> <bit>22</bit></item>
+ <item name="ColorMapChange"> <bit>23</bit></item>
+ <item name="OwnerGrabButton"> <bit>24</bit></item>
+ </enum>
+
+ <enum name="BackingStore">
+ <item name="NotUseful"> <value>0</value></item>
+ <item name="WhenMapped"><value>1</value></item>
+ <item name="Always"> <value>2</value></item>
+ </enum>
+
<struct name="SCREEN">
<field type="WINDOW" name="root" />
<field type="COLORMAP" name="default_colormap" />
<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>
+
+ <enum name="Window">
+ <item name="None"> <value>0</value></item>
+ </enum>
+
<event name="KeyPress" number="2">
<field type="KEYCODE" name="detail" />
<field type="TIMESTAMP" name="time" />
<field type="WINDOW" name="root" />
<field type="WINDOW" name="event" />
- <field type="WINDOW" name="child" />
+ <field type="WINDOW" name="child" altenum="Window" />
<field type="INT16" name="root_x" />
<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="TIMESTAMP" name="time" />
<field type="WINDOW" name="root" />
<field type="WINDOW" name="event" />
- <field type="WINDOW" name="child" />
+ <field type="WINDOW" name="child" altenum="Window" />
<field type="INT16" name="root_x" />
<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="TIMESTAMP" name="time" />
<field type="WINDOW" name="root" />
<field type="WINDOW" name="event" />
- <field type="WINDOW" name="child" />
+ <field type="WINDOW" name="child" altenum="Window" />
<field type="INT16" name="root_x" />
<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="TIMESTAMP" name="time" />
<field type="WINDOW" name="root" />
<field type="WINDOW" name="event" />
- <field type="WINDOW" name="child" />
+ <field type="WINDOW" name="child" altenum="Window" />
<field type="INT16" name="root_x" />
<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>
<pad bytes="1" />
<field type="WINDOW" name="event" />
<field type="WINDOW" name="window" />
- <field type="WINDOW" name="above_sibling" />
+ <field type="WINDOW" name="above_sibling" altenum="Window" />
<field type="INT16" name="x" />
<field type="INT16" name="y" />
<field type="CARD16" name="width" />
<field type="BYTE" name="stack_mode" enum="StackMode" />
<field type="WINDOW" name="parent" />
<field type="WINDOW" name="window" />
- <field type="WINDOW" name="sibling" />
+ <field type="WINDOW" name="sibling" altenum="Window" />
<field type="INT16" name="x" />
<field type="INT16" name="y" />
<field type="CARD16" name="width" />
<field type="ATOM" name="selection" />
</event>
+ <enum name="Time">
+ <item name="CurrentTime"> <value>0</value> </item>
+ </enum>
+
+ <enum name="Atom">
+ <item name="None"> <value>0</value></item>
+ <item name="Any"> <value>0</value></item>
+ <item name="PRIMARY" />
+ <item name="SECONDARY" />
+ <item name="ARC" />
+ <item name="ATOM" />
+ <item name="BITMAP" />
+ <item name="CARDINAL" />
+ <item name="COLORMAP" />
+ <item name="CURSOR" />
+ <item name="CUT_BUFFER0" />
+ <item name="CUT_BUFFER1" />
+ <item name="CUT_BUFFER2" />
+ <item name="CUT_BUFFER3" />
+ <item name="CUT_BUFFER4" />
+ <item name="CUT_BUFFER5" />
+ <item name="CUT_BUFFER6" />
+ <item name="CUT_BUFFER7" />
+ <item name="DRAWABLE" />
+ <item name="FONT" />
+ <item name="INTEGER" />
+ <item name="PIXMAP" />
+ <item name="POINT" />
+ <item name="RECTANGLE" />
+ <item name="RESOURCE_MANAGER" />
+ <item name="RGB_COLOR_MAP" />
+ <item name="RGB_BEST_MAP" />
+ <item name="RGB_BLUE_MAP" />
+ <item name="RGB_DEFAULT_MAP" />
+ <item name="RGB_GRAY_MAP" />
+ <item name="RGB_GREEN_MAP" />
+ <item name="RGB_RED_MAP" />
+ <item name="STRING" />
+ <item name="VISUALID" />
+ <item name="WINDOW" />
+ <item name="WM_COMMAND" />
+ <item name="WM_HINTS" />
+ <item name="WM_CLIENT_MACHINE" />
+ <item name="WM_ICON_NAME" />
+ <item name="WM_ICON_SIZE" />
+ <item name="WM_NAME" />
+ <item name="WM_NORMAL_HINTS" />
+ <item name="WM_SIZE_HINTS" />
+ <item name="WM_ZOOM_HINTS" />
+ <item name="MIN_SPACE" />
+ <item name="NORM_SPACE" />
+ <item name="MAX_SPACE" />
+ <item name="END_SPACE" />
+ <item name="SUPERSCRIPT_X" />
+ <item name="SUPERSCRIPT_Y" />
+ <item name="SUBSCRIPT_X" />
+ <item name="SUBSCRIPT_Y" />
+ <item name="UNDERLINE_POSITION" />
+ <item name="UNDERLINE_THICKNESS" />
+ <item name="STRIKEOUT_ASCENT" />
+ <item name="STRIKEOUT_DESCENT" />
+ <item name="ITALIC_ANGLE" />
+ <item name="X_HEIGHT" />
+ <item name="QUAD_WIDTH" />
+ <item name="WEIGHT" />
+ <item name="POINT_SIZE" />
+ <item name="RESOLUTION" />
+ <item name="COPYRIGHT" />
+ <item name="NOTICE" />
+ <item name="FONT_NAME" />
+ <item name="FAMILY_NAME" />
+ <item name="FULL_NAME" />
+ <item name="CAP_HEIGHT" />
+ <item name="WM_CLASS" />
+ <item name="WM_TRANSIENT_FOR" />
+ </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" />
<field type="ATOM" name="target" />
- <field type="ATOM" name="property" />
+ <field type="ATOM" name="property" altenum="Atom" />
</event>
<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="ATOM" name="property" />
+ <field type="ATOM" name="property" altenum="Atom" />
</event>
<enum name="ColormapState">
<item name="Installed"> <value>1</value></item>
</enum>
+ <enum name="Colormap">
+ <item name="None"> <value>0</value></item>
+ </enum>
+
<event name="ColormapNotify" number="32">
<pad bytes="1" />
<field type="WINDOW" name="window" />
- <field type="COLORMAP" name="colormap" />
+ <field type="COLORMAP" name="colormap" altenum="Colormap" />
<field type="BOOL" name="new" />
<field type="BYTE" name="state" enum="ColormapState" />
<pad bytes="2" />
<item name="Static"> <value>10</value></item>
</enum>
- <!-- Also used in XCBSCREEN field backing_stores -->
- <enum name="BackingStore">
- <item name="NotUseful"> <value>0</value></item>
- <item name="WhenMapped"><value>1</value></item>
- <item name="Always"> <value>2</value></item>
- </enum>
-
- <enum name="EventMask">
- <item name="NoEvent"> <value>0</value></item>
- <item name="KeyPress"> <bit>0</bit></item>
- <item name="KeyRelease"> <bit>1</bit></item>
- <item name="ButtonPress"> <bit>2</bit></item>
- <item name="ButtonRelease"> <bit>3</bit></item>
- <item name="EnterWindow"> <bit>4</bit></item>
- <item name="LeaveWindow"> <bit>5</bit></item>
- <item name="PointerMotion"> <bit>6</bit></item>
- <item name="PointerMotionHint"> <bit>7</bit></item>
- <item name="Button1Motion"> <bit>8</bit></item>
- <item name="Button2Motion"> <bit>9</bit></item>
- <item name="Button3Motion"> <bit>10</bit></item>
- <item name="Button4Motion"> <bit>11</bit></item>
- <item name="Button5Motion"> <bit>12</bit></item>
- <item name="ButtonMotion"> <bit>13</bit></item>
- <item name="KeymapState"> <bit>14</bit></item>
- <item name="Exposure"> <bit>15</bit></item>
- <item name="VisibilityChange"> <bit>16</bit></item>
- <item name="StructureNotify"> <bit>17</bit></item>
- <item name="ResizeRedirect"> <bit>18</bit></item>
- <item name="SubstructureNotify"> <bit>19</bit></item>
- <item name="SubstructureRedirect"><bit>20</bit></item>
- <item name="FocusChange"> <bit>21</bit></item>
- <item name="PropertyChange"> <bit>22</bit></item>
- <item name="ColorMapChange"> <bit>23</bit></item>
- <item name="OwnerGrabButton"> <bit>24</bit></item>
- </enum>
-
<request name="CreateWindow" opcode="1">
<field type="CARD8" name="depth" />
<field type="WINDOW" name="wid" />
<field type="BOOL" name="map_is_installed" />
<field type="CARD8" name="map_state" enum="MapState" />
<field type="BOOL" name="override_redirect" />
- <field type="COLORMAP" name="colormap" />
+ <field type="COLORMAP" name="colormap" altenum="Colormap" />
<field type="CARD32" name="all_event_masks" mask="EventMask" />
<field type="CARD32" name="your_event_mask" mask="EventMask" />
<field type="CARD16" name="do_not_propagate_mask" mask="EventMask" />
<request name="ConfigureWindow" opcode="12">
<pad bytes="1" />
<field type="WINDOW" name="window" />
+ <field type="CARD16" name="value_mask" />
+ <pad bytes="2" />
<valueparam value-mask-type="CARD16"
value-mask-name="value_mask"
- value-mask-pad="2"
value-list-name="value_list" />
</request>
<reply>
<pad bytes="1" />
<field type="WINDOW" name="root" />
- <field type="WINDOW" name="parent" />
+ <field type="WINDOW" name="parent" altenum="Window" />
<field type="CARD16" name="children_len" />
<pad bytes="14" />
<list type="WINDOW" name="children">
</list>
<reply>
<pad bytes="1" />
- <field type="ATOM" name="atom" />
+ <field type="ATOM" name="atom" altenum="Atom" />
</reply>
</request>
<field type="CARD32" name="value_len" />
<pad bytes="12" />
<list type="void" name="value">
- <fieldref>value_len</fieldref>
+ <op op="*">
+ <fieldref>value_len</fieldref>
+ <op op="/">
+ <fieldref>format</fieldref>
+ <value>8</value>
+ </op>
+ </op>
</list>
</reply>
</request>
<request name="SetSelectionOwner" opcode="22">
<pad bytes="1" />
- <field type="WINDOW" name="owner" />
+ <field type="WINDOW" name="owner" altenum="Window" />
<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" />
<reply>
<pad bytes="1" />
- <field type="WINDOW" name="owner" />
+ <field type="WINDOW" name="owner" altenum="Window" />
</reply>
</request>
<field type="WINDOW" name="requestor" />
<field type="ATOM" name="selection" />
<field type="ATOM" name="target" />
- <field type="ATOM" name="property" />
- <field type="TIMESTAMP" name="time" />
+ <field type="ATOM" name="property" altenum="Atom" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<enum name="SendEventDest">
<item name="Frozen"> <value>4</value></item>
</enum>
+ <enum name="Cursor">
+ <item name="None"> <value>0</value></item>
+ </enum>
+
<request name="GrabPointer" opcode="26">
<field type="BOOL" name="owner_events" />
<field type="WINDOW" name="grab_window" />
<field type="CARD16" name="event_mask" mask="EventMask" />
<field type="BYTE" name="pointer_mode" enum="GrabMode" />
<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="WINDOW" name="confine_to" altenum="Window" />
+ <field type="CURSOR" name="cursor" altenum="Cursor" />
+ <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">
<field type="CARD16" name="event_mask" mask="EventMask" />
<field type="CARD8" name="pointer_mode" enum="GrabMode" />
<field type="CARD8" name="keyboard_mode" enum="GrabMode" />
- <field type="WINDOW" name="confine_to" />
- <field type="CURSOR" name="cursor" />
+ <field type="WINDOW" name="confine_to" altenum="Window" />
+ <field type="CURSOR" name="cursor" altenum="Cursor" />
<field type="CARD8" name="button" enum="ButtonIndex" />
<pad bytes="1" />
<field type="CARD16" name="modifiers" mask="ModMask" />
<request name="ChangeActivePointerGrab" opcode="30">
<pad bytes="1" />
- <field type="CURSOR" name="cursor" />
- <field type="TIMESTAMP" name="time" />
+ <field type="CURSOR" name="cursor" altenum="Cursor" />
+ <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 -->
<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" />
<reply>
<field type="BOOL" name="same_screen" />
<field type="WINDOW" name="root" />
- <field type="WINDOW" name="child" />
+ <field type="WINDOW" name="child" altenum="Window" />
<field type="INT16" name="root_x" />
<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" />
<field type="INT16" name="src_y" />
<reply>
<field type="BOOL" name="same_screen" />
- <field type="WINDOW" name="child" />
- <field type="CARD16" name="dst_x" />
- <field type="CARD16" name="dst_y" />
+ <field type="WINDOW" name="child" altenum="Window" />
+ <field type="INT16" name="dst_x" />
+ <field type="INT16" name="dst_y" />
</reply>
</request>
<request name="WarpPointer" opcode="41">
<pad bytes="1" />
- <field type="WINDOW" name="src_window" />
- <field type="WINDOW" name="dst_window" />
+ <field type="WINDOW" name="src_window" altenum="Window" />
+ <field type="WINDOW" name="dst_window" altenum="Window" />
<field type="INT16" name="src_x" />
<field type="INT16" name="src_y" />
<field type="CARD16" name="src_width" />
<item name="None"> <value>0</value></item>
<item name="PointerRoot"><value>1</value></item>
<item name="Parent"> <value>2</value></item> <!-- revert_to only -->
+ <item name="FollowKeyboard"><value>3</value></item> <!-- xinput extension only -->
</enum>
<request name="SetInputFocus" opcode="42">
<field type="CARD8" name="revert_to" enum="InputFocus" />
<field type="WINDOW" name="focus" altenum="InputFocus" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<request name="GetInputFocus" opcode="43">
<request name="SetFontPath" opcode="51">
<pad bytes="1" />
<field type="CARD16" name="font_qty" />
- <list type="char" name="path" />
+ <pad bytes="2" />
+ <list type="STR" name="font">
+ <fieldref>font_qty</fieldref>
+ </list>
</request>
<request name="GetFontPath" opcode="52">
</enum>
<enum name="JoinStyle">
- <item name="Mitre"> <value>0</value></item>
+ <item name="Miter"> <value>0</value></item>
<item name="Round"> <value>1</value></item>
<item name="Bevel"> <value>2</value></item>
</enum>
</reply>
</request>
+ <enum name="Pixmap">
+ <item name="None"> <value>0</value></item>
+ </enum>
+
<request name="CreateCursor" opcode="93">
<pad bytes="1" />
<field type="CURSOR" name="cid" />
<field type="PIXMAP" name="source" />
- <field type="PIXMAP" name="mask" />
+ <field type="PIXMAP" name="mask" altenum="Pixmap" />
<field type="CARD16" name="fore_red" />
<field type="CARD16" name="fore_green" />
<field type="CARD16" name="fore_blue" />
<field type="CARD16" name="y" />
</request>
+ <enum name="Font">
+ <item name="None"> <value>0</value></item>
+ </enum>
+
<request name="CreateGlyphCursor" opcode="94">
<pad bytes="1" />
<field type="CURSOR" name="cid" />
<field type="FONT" name="source_font" />
- <field type="FONT" name="mask_font" />
+ <field type="FONT" name="mask_font" altenum="Font" />
<field type="CARD16" name="source_char" />
<field type="CARD16" name="mask_char" />
<field type="CARD16" name="fore_red" />
<field type="CARD8" name="keycode_count" />
<field type="KEYCODE" name="first_keycode" />
<field type="CARD8" name="keysyms_per_keycode" />
+ <pad bytes="2" />
<list type="KEYSYM" name="keysyms">
<op op="*">
<fieldref>keycode_count</fieldref>
<field type="CARD8" name="family" enum="Family" />
<pad bytes="1" />
<field type="CARD16" name="address_len" />
- <list type="char" name="address">
+ <list type="BYTE" name="address">
<fieldref>address_len</fieldref>
</list>
</request>