-->
<!-- This file describes version 4 of XFixes. -->
<xcb header="xfixes" extension-xname="XFIXES" extension-name="XFixes"
- major-version="4" minor-version="0">
+ major-version="5" minor-version="0">
<import>xproto</import>
<import>render</import>
<import>shape</import>
</request>
<enum name="SaveSetMode">
- <item name="Insert" />
- <item name="Delete" />
+ <item name="Insert"> <value>0</value> </item>
+ <item name="Delete"> <value>1</value> </item>
</enum>
<enum name="SaveSetTarget">
- <item name="Nearest" />
- <item name="Root" />
+ <item name="Nearest"> <value>0</value> </item>
+ <item name="Root"> <value>1</value> </item>
</enum>
<enum name="SaveSetMapping">
- <item name="Map" />
- <item name="Unmap" />
+ <item name="Map"> <value>0</value> </item>
+ <item name="Unmap"> <value>1</value> </item>
</enum>
<request name="ChangeSaveSet" opcode="1">
- <field type="BYTE" name="mode" /> <!-- SaveSetMode -->
- <field type="BYTE" name="target" /> <!-- SaveSetTarget -->
- <field type="BYTE" name="map" /> <!-- SaveSetMapping -->
+ <field type="BYTE" name="mode" enum="SaveSetMode" />
+ <field type="BYTE" name="target" enum="SaveSetTarget" />
+ <field type="BYTE" name="map" enum="SaveSetMapping" />
<pad bytes="1" />
<field type="WINDOW" name="window" />
</request>
<enum name="SelectionEvent">
- <item name="SetSelectionOwner" />
- <item name="SelectionWindowDestroy" />
- <item name="SelectionClientClose" />
+ <item name="SetSelectionOwner"> <value>0</value> </item>
+ <item name="SelectionWindowDestroy"> <value>1</value> </item>
+ <item name="SelectionClientClose"> <value>2</value> </item>
</enum>
<enum name="SelectionEventMask">
</enum>
<event name="SelectionNotify" number="0">
- <field type="CARD8" name="subtype" /> <!-- SelectionEvent -->
+ <field type="CARD8" name="subtype" enum="SelectionEvent" />
<field type="WINDOW" name="window" />
<field type="WINDOW" name="owner" />
<field type="ATOM" name="selection" />
<request name="SelectSelectionInput" opcode="2">
<field type="WINDOW" name="window" />
<field type="ATOM" name="selection" />
- <field type="CARD32" name="event_mask" /> <!-- SelectionEventMask -->
+ <field type="CARD32" name="event_mask" mask="SelectionEventMask" />
</request>
<enum name="CursorNotify">
- <item name="DisplayCursor" />
+ <item name="DisplayCursor"> <value>0</value> </item>
</enum>
<enum name="CursorNotifyMask">
</enum>
<event name="CursorNotify" number="1">
- <field type="CARD8" name="subtype" /> <!-- CursorNotify -->
+ <field type="CARD8" name="subtype" enum="CursorNotify" />
<field type="WINDOW" name="window" />
<field type="CARD32" name="cursor_serial" />
<field type="TIMESTAMP" name="timestamp" />
- <field type="ATOM" name="name" /> <!-- Added in version 2 -->
+ <field type="ATOM" name="name" altenum="Atom" /> <!-- Added in version 2 -->
<pad bytes="12" />
</event>
<request name="SelectCursorInput" opcode="3">
<field type="WINDOW" name="window" />
- <field type="CARD32" name="event_mask" /> <!-- CursorNotifyMask -->
+ <field type="CARD32" name="event_mask" mask="CursorNotifyMask" />
</request>
<request name="GetCursorImage" opcode="4">
<error name="BadRegion" number="0" />
+ <enum name="Region">
+ <item name="None"> <value>0</value> </item>
+ </enum>
+
<request name="CreateRegion" opcode="5">
<field type="REGION" name="region" />
<list type="RECTANGLE" name="rectangles" />
<request name="CreateRegionFromWindow" opcode="7">
<field type="REGION" name="region" />
<field type="WINDOW" name="window" />
- <field type="shape:KIND" name="kind" />
+ <field type="shape:KIND" name="kind" enum="SK" />
<pad bytes="3" />
</request>
<pad bytes="1" />
<field type="RECTANGLE" name="extents" />
<pad bytes="16" />
- <list type="RECTANGLE" name="rectangles" />
+ <list type="RECTANGLE" name="rectangles">
+ <op op='/'>
+ <fieldref>length</fieldref>
+ <value>2</value>
+ </op>
+ </list>
</reply>
</request>
<request name="SetGCClipRegion" opcode="20">
<field type="GCONTEXT" name="gc" />
- <field type="REGION" name="region" />
+ <field type="REGION" name="region" altenum="Region" />
<field type="INT16" name="x_origin" />
<field type="INT16" name="y_origin" />
</request>
<request name="SetWindowShapeRegion" opcode="21">
<field type="WINDOW" name="dest" />
- <field type="shape:KIND" name="dest_kind" />
+ <field type="shape:KIND" name="dest_kind" enum="SK" />
<pad bytes="3" />
<field type="INT16" name="x_offset" />
<field type="INT16" name="y_offset" />
- <field type="REGION" name="region" />
+ <field type="REGION" name="region" altenum="Region" />
</request>
<request name="SetPictureClipRegion" opcode="22">
<field type="PICTURE" name="picture" />
- <field type="REGION" name="region" />
+ <field type="REGION" name="region" altenum="Region" />
<field type="INT16" name="x_origin" />
<field type="INT16" name="y_origin" />
</request>
<field type="CURSOR" name="cursor" />
<field type="CARD16" name="nbytes" />
<pad bytes="2" />
- <list type="CARD8" name="name"><fieldref>nbytes</fieldref></list>
+ <list type="char" name="name"><fieldref>nbytes</fieldref></list>
</request>
<request name="GetCursorName" opcode="24">
<field type="CURSOR" name="cursor" />
<reply>
<pad bytes="1" />
- <field type="ATOM" name="atom" />
+ <field type="ATOM" name="atom" altenum="Atom" />
<field type="CARD16" name="nbytes" />
<pad bytes="18" />
- <list type="CARD8" name="name"><fieldref>nbytes</fieldref></list>
+ <list type="char" name="name"><fieldref>nbytes</fieldref></list>
</reply>
</request>
<field type="CARD16" name="xhot" />
<field type="CARD16" name="yhot" />
<field type="CARD32" name="cursor_serial" />
- <field type="ATOM" name="cursor_atom" />
+ <field type="ATOM" name="cursor_atom" altenum="Atom" />
<field type="CARD16" name="nbytes" />
<pad bytes="2" />
- <list type="CARD8" name="name"><fieldref>nbytes</fieldref></list>
+ <list type="char" name="name"><fieldref>nbytes</fieldref></list>
<list type="CARD32" name="cursor_image">
<op op="*">
<fieldref>width</fieldref>
<field type="CURSOR" name="src" />
<field type="CARD16" name="nbytes" />
<pad bytes="2" />
- <list type="CARD8" name="name"><fieldref>nbytes</fieldref></list>
+ <list type="char" name="name"><fieldref>nbytes</fieldref></list>
</request>
<!-- Version 3 -->
<request name="ShowCursor" opcode="30">
<field type="WINDOW" name="window" />
</request>
+
+ <!-- Version 5 -->
+
+ <xidtype name="BARRIER" />
+
+ <enum name="BarrierDirections">
+ <item name="PositiveX"><bit>0</bit></item>
+ <item name="PositiveY"><bit>1</bit></item>
+ <item name="NegativeX"><bit>2</bit></item>
+ <item name="NegativeY"><bit>3</bit></item>
+ </enum>
+
+ <request name="CreatePointerBarrier" opcode="31">
+ <field type="BARRIER" name="barrier" />
+ <field type="WINDOW" name="window" />
+ <field type="CARD16" name="x1" />
+ <field type="CARD16" name="y1" />
+ <field type="CARD16" name="x2" />
+ <field type="CARD16" name="y2" />
+ <field type="CARD32" name="directions" mask="BarrierDirections" />
+ <pad bytes="2" />
+ <field type="CARD16" name="num_devices" />
+ <list type="CARD16" name="devices"><fieldref>num_devices</fieldref></list>
+ </request>
+
+ <request name="DeletePointerBarrier" opcode="32">
+ <field type="BARRIER" name="barrier" />
+ </request>
</xcb>