diff options
Diffstat (limited to 'libxcb/xcb-proto/src')
-rw-r--r-- | libxcb/xcb-proto/src/Makefile.am | 2 | ||||
-rw-r--r-- | libxcb/xcb-proto/src/dri3.xml | 97 | ||||
-rw-r--r-- | libxcb/xcb-proto/src/present.xml | 205 | ||||
-rw-r--r-- | libxcb/xcb-proto/src/shm.xml | 21 | ||||
-rw-r--r-- | libxcb/xcb-proto/src/sync.xml | 24 | ||||
-rw-r--r-- | libxcb/xcb-proto/src/xkb.xml | 34 | ||||
-rw-r--r-- | libxcb/xcb-proto/src/xproto.xml | 16 |
7 files changed, 364 insertions, 35 deletions
diff --git a/libxcb/xcb-proto/src/Makefile.am b/libxcb/xcb-proto/src/Makefile.am index eef2dbc45..d81d818a6 100644 --- a/libxcb/xcb-proto/src/Makefile.am +++ b/libxcb/xcb-proto/src/Makefile.am @@ -6,8 +6,10 @@ xcbinclude_HEADERS = \ damage.xml \ dpms.xml \ dri2.xml \ + dri3.xml \ ge.xml \ glx.xml \ + present.xml \ randr.xml \ record.xml \ render.xml \ diff --git a/libxcb/xcb-proto/src/dri3.xml b/libxcb/xcb-proto/src/dri3.xml new file mode 100644 index 000000000..608af3157 --- /dev/null +++ b/libxcb/xcb-proto/src/dri3.xml @@ -0,0 +1,97 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + +Copyright © 2013 Keith Packard + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that copyright +notice and this permission notice appear in supporting documentation, and +that the name of the copyright holders not be used in advertising or +publicity pertaining to distribution of the software without specific, +written prior permission. The copyright holders make no representations +about the suitability of this software for any purpose. It is provided "as +is" without express or implied warranty. + +THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, +INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO +EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR +CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE +OF THIS SOFTWARE. +--> + +<xcb header="dri3" extension-xname="DRI3" extension-name="DRI3" + major-version="1" minor-version="0"> + <import>xproto</import> + + <!-- Types --> + + <!-- Requests --> + <request name="QueryVersion" opcode="0"> + <field type="CARD32" name="major_version" /> + <field type="CARD32" name="minor_version" /> + <reply> + <pad bytes="1" /> + <field type="CARD32" name="major_version" /> + <field type="CARD32" name="minor_version" /> + </reply> + </request> + + <request name="Open" opcode="1"> + <field type="DRAWABLE" name="drawable" /> + <field type="CARD32" name="provider" /> + <reply> + <field type="CARD8" name="nfd"/> + <fd name="device_fd" /> + <pad bytes="24" /> + </reply> + </request> + + <request name="PixmapFromBuffer" opcode="2"> + <field type="PIXMAP" name="pixmap" /> + <field type="DRAWABLE" name="drawable" /> + <field type="CARD32" name="size" /> + <field type="CARD16" name="width" /> + <field type="CARD16" name="height" /> + <field type="CARD16" name="stride" /> + <field type="CARD8" name="depth" /> + <field type="CARD8" name="bpp" /> + <fd name="pixmap_fd" /> + </request> + + <request name="BufferFromPixmap" opcode="3"> + <field type="PIXMAP" name="pixmap" /> + <reply> + <field type="CARD8" name="nfd"/> + <field type="CARD32" name="size" /> + <field type="CARD16" name="width" /> + <field type="CARD16" name="height" /> + <field type="CARD16" name="stride" /> + <field type="CARD8" name="depth" /> + <field type="CARD8" name="bpp" /> + <fd name="pixmap_fd" /> + <pad bytes="12"/> + </reply> + </request> + + <request name="FenceFromFD" opcode="4"> + <field type="DRAWABLE" name="drawable" /> + <field type="CARD32" name="fence"/> + <field type="BOOL" name="initially_triggered"/> + <pad bytes="3"/> + <fd name="fence_fd"/> + </request> + + <request name="FDFromFence" opcode="5"> + <field type="DRAWABLE" name="drawable" /> + <field type="CARD32" name="fence"/> + <reply> + <field type="CARD8" name="nfd"/> + <fd name="fence_fd" /> + <pad bytes="24"/> + </reply> + </request> + +</xcb> diff --git a/libxcb/xcb-proto/src/present.xml b/libxcb/xcb-proto/src/present.xml new file mode 100644 index 000000000..d12ae4879 --- /dev/null +++ b/libxcb/xcb-proto/src/present.xml @@ -0,0 +1,205 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + +Copyright © 2013 Keith Packard + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that copyright +notice and this permission notice appear in supporting documentation, and +that the name of the copyright holders not be used in advertising or +publicity pertaining to distribution of the software without specific, +written prior permission. The copyright holders make no representations +about the suitability of this software for any purpose. It is provided "as +is" without express or implied warranty. + +THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, +INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO +EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR +CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE +OF THIS SOFTWARE. +--> + +<xcb header="present" extension-xname="Present" extension-name="Present" + major-version="1" minor-version="0"> + <import>xproto</import> + <import>randr</import> + <import>xfixes</import> + <import>sync</import> + + <!-- Types --> + + <enum name="Event"> + <item name="ConfigureNotify"><value>0</value></item> + <item name="CompleteNotify"><value>1</value></item> + <item name="IdleNotify"><value>2</value></item> + <item name="RedirectNotify"><value>3</value></item> + </enum> + + <enum name="EventMask"> + <item name="NoEvent"><value>0</value></item> + <item name="ConfigureNotify"><bit>0</bit></item> + <item name="CompleteNotify"><bit>1</bit></item> + <item name="IdleNotify"><bit>2</bit></item> + <item name="RedirectNotify"><bit>3</bit></item> + </enum> + + <enum name="Option"> + <item name="None"><value>0</value></item> + <item name="Async"><bit>0</bit></item> + <item name="Copy"><bit>1</bit></item> + <item name="UST"><bit>2</bit></item> + </enum> + + <enum name="Capability"> + <item name="None"><value>0</value></item> + <item name="Async"><bit>0</bit></item> + <item name="Fence"><bit>1</bit></item> + <item name="UST"><bit>2</bit></item> + </enum> + + <enum name="CompleteKind"> + <item name="Pixmap"><value>0</value></item> + <item name="NotifyMSC"><value>1</value></item> + </enum> + + <enum name="CompleteMode"> + <item name="Copy"><value>0</value></item> + <item name="Flip"><value>1</value></item> + <item name="Skip"><value>2</value></item> + </enum> + + <struct name="Notify"> + <field type="WINDOW" name="window" /> + <field type="CARD32" name="serial" /> + </struct> + + <!-- Requests --> + <request name="QueryVersion" opcode="0"> + <field type="CARD32" name="major_version" /> + <field type="CARD32" name="minor_version" /> + <reply> + <pad bytes="1" /> + <field type="CARD32" name="major_version" /> + <field type="CARD32" name="minor_version" /> + </reply> + </request> + + <request name="Pixmap" opcode="1"> + <field type="WINDOW" name="window" /> + <field type="PIXMAP" name="pixmap" /> + <field type="CARD32" name="serial" /> + <field type="REGION" name="valid" /> + <field type="REGION" name="update" /> + <field type="INT16" name="x_off" /> + <field type="INT16" name="y_off" /> + <field type="CRTC" name="target_crtc" /> + <field type="FENCE" name="wait_fence" /> + <field type="FENCE" name="idle_fence" /> + <field type="CARD32" name="options" /> + <pad bytes="4"/> + <field type="CARD64" name="target_msc" /> + <field type="CARD64" name="divisor" /> + <field type="CARD64" name="remainder" /> + <list type="Notify" name="notifies"/> + </request> + + <request name="NotifyMSC" opcode="2"> + <field type="WINDOW" name="window" /> + <field type="CARD32" name="serial" /> + <pad bytes="4"/> + <field type="CARD64" name="target_msc" /> + <field type="CARD64" name="divisor" /> + <field type="CARD64" name="remainder" /> + </request> + + <xidtype name="EVENT"/> + + <request name="SelectInput" opcode="3"> + <field type="EVENT" name="eid"/> + <field type="WINDOW" name="window" /> + <field type="CARD32" name="event_mask" mask="EventMask" /> + </request> + + <request name="QueryCapabilities" opcode="4"> + <field type="CARD32" name="target" /> + <reply> + <pad bytes="1" /> + <field type="CARD32" name="capabilities" /> + </reply> + </request> + + <!-- Events --> + + <event name="Generic"> + <field type="CARD8" name="extension" /> + <field type="CARD32" name="length" /> + <field type="CARD16" name="evtype" enum="EventType" /> + <pad bytes="2" /> + <field type="EVENT" name="event" /> + </event> + + <event name="ConfigureNotify" number="0" xge="true"> + <pad bytes="2" /> + <field type="EVENT" name="event" /> + <field type="WINDOW" name="window" /> + <field type="INT16" name="x" /> + <field type="INT16" name="y" /> + <field type="CARD16" name="width" /> + <field type="CARD16" name="height" /> + <field type="INT16" name="off_x" /> + <field type="INT16" name="off_y" /> + <field type="CARD16" name="pixmap_width" /> + <field type="CARD16" name="pixmap_height" /> + <field type="CARD32" name="pixmap_flags" /> + </event> + + <event name="CompleteNotify" number="1" xge="true"> + <field type="CARD8" name="kind" enum="CompleteKind" /> + <field type="CARD8" name="mode" enum="CompleteMode" /> + <field type="EVENT" name="event" /> + <field type="WINDOW" name="window" /> + <field type="CARD32" name="serial" /> + <field type="CARD64" name="ust" /> + <field type="CARD64" name="msc" /> + </event> + + <event name="IdleNotify" number="2" xge="true"> + <pad bytes="2"/> + <field type="EVENT" name="event" /> + <field type="WINDOW" name="window" /> + <field type="CARD32" name="serial" /> + <field type="PIXMAP" name="pixmap" /> + <field type="FENCE" name="idle_fence" /> + </event> + + <event name="RedirectNotify" number="3" xge="true"> + <field type="BOOL" name="update_window"/> + <pad bytes="1"/> + <field type="EVENT" name="event" /> + <field type="WINDOW" name="event_window" /> + <field type="WINDOW" name="window" /> + <field type="PIXMAP" name="pixmap" /> + <field type="CARD32" name="serial" /> + + <field type="REGION" name="valid_region" /> + <field type="REGION" name="update_region" /> + <field type="RECTANGLE" name="valid_rect" /> + <field type="RECTANGLE" name="update_rect" /> + + <field type="INT16" name="x_off" /> + <field type="INT16" name="y_off" /> + <field type="CRTC" name="target_crtc" /> + <field type="FENCE" name="wait_fence" /> + <field type="FENCE" name="idle_fence" /> + <field type="CARD32" name="options" /> + <pad bytes="4"/> + <field type="CARD64" name="target_msc" /> + <field type="CARD64" name="divisor" /> + <field type="CARD64" name="remainder" /> + <list type="Notify" name="notifies"/> + </event> + +</xcb> diff --git a/libxcb/xcb-proto/src/shm.xml b/libxcb/xcb-proto/src/shm.xml index adda50957..71fce14fa 100644 --- a/libxcb/xcb-proto/src/shm.xml +++ b/libxcb/xcb-proto/src/shm.xml @@ -26,7 +26,7 @@ sale, use or other dealings in this Software without prior written authorization from the authors. --> <xcb header="shm" extension-xname="MIT-SHM" extension-name="Shm" - major-version="1" minor-version="1"> + major-version="1" minor-version="2"> <import>xproto</import> <xidtype name="SEG" /> @@ -113,4 +113,23 @@ authorization from the authors. <field type="SEG" name="shmseg" /> <field type="CARD32" name="offset" /> </request> + + <request name="AttachFd" opcode="6"> + <field type="SEG" name="shmseg" /> + <fd name="shm_fd" /> + <field type="BOOL" name="read_only" /> + <pad bytes="3" /> + </request> + + <request name="CreateSegment" opcode="7"> + <field type="SEG" name="shmseg" /> + <field type="CARD32" name="size" /> + <field type="BOOL" name="read_only" /> + <pad bytes="3" /> + <reply> + <field type="CARD8" name="nfd" /> + <fd name="shm_fd" /> + <pad bytes="24" /> + </reply> + </request> </xcb> diff --git a/libxcb/xcb-proto/src/sync.xml b/libxcb/xcb-proto/src/sync.xml index 7bcf0ae32..bc07c5b63 100644 --- a/libxcb/xcb-proto/src/sync.xml +++ b/libxcb/xcb-proto/src/sync.xml @@ -48,7 +48,7 @@ for licensing information. <struct name="SYSTEMCOUNTER"> <field type="COUNTER" name="counter" /> - <field type="INT64" name="resolution" /> + <field type="sync:INT64" name="resolution" /> <field type="CARD16" name="name_len" /> <list type="char" name="name"> <fieldref>name_len</fieldref> @@ -58,13 +58,13 @@ for licensing information. <struct name="TRIGGER"> <field type="COUNTER" name="counter" /> <field type="CARD32" name="wait_type" enum="VALUETYPE" /> - <field type="INT64" name="wait_value" /> + <field type="sync:INT64" name="wait_value" /> <field type="CARD32" name="test_type" enum="TESTTYPE" /> </struct> <struct name="WAITCONDITION"> <field type="TRIGGER" name="trigger" /> - <field type="INT64" name="event_threshold" /> + <field type="sync:INT64" name="event_threshold" /> </struct> <error name="Counter" number="0"> @@ -103,7 +103,7 @@ for licensing information. <request name="CreateCounter" opcode="2"> <field type="COUNTER" name="id" /> - <field type="INT64" name="initial_value" /> + <field type="sync:INT64" name="initial_value" /> </request> <request name="DestroyCounter" opcode="6"> @@ -114,7 +114,7 @@ for licensing information. <field type="COUNTER" name="counter" /> <reply> <pad bytes="1" /> - <field type="INT64" name="counter_value" /> + <field type="sync:INT64" name="counter_value" /> </reply> </request> @@ -124,12 +124,12 @@ for licensing information. <request name="ChangeCounter" opcode="4"> <field type="COUNTER" name="counter" /> - <field type="INT64" name="amount" /> + <field type="sync:INT64" name="amount" /> </request> <request name="SetCounter" opcode="3"> <field type="COUNTER" name="counter" /> - <field type="INT64" name="value" /> + <field type="sync:INT64" name="value" /> </request> <request name="CreateAlarm" opcode="8"> @@ -205,7 +205,7 @@ for licensing information. <reply> <pad bytes="1" /> <field type="TRIGGER" name="trigger" /> - <field type="INT64" name="delta" /> + <field type="sync:INT64" name="delta" /> <field type="BOOL" name="events" /> <field type="CARD8" name="state" enum="ALARMSTATE" /> <pad bytes="2" /> @@ -259,8 +259,8 @@ for licensing information. <event name="CounterNotify" number="0"> <field type="CARD8" name="kind" /> <field type="COUNTER" name="counter" /> - <field type="INT64" name="wait_value" /> - <field type="INT64" name="counter_value" /> + <field type="sync:INT64" name="wait_value" /> + <field type="sync:INT64" name="counter_value" /> <field type="TIMESTAMP" name="timestamp" /> <field type="CARD16" name="count" /> <field type="BOOL" name="destroyed" /> @@ -270,8 +270,8 @@ for licensing information. <event name="AlarmNotify" number="1"> <field type="CARD8" name="kind" /> <field type="ALARM" name="alarm" /> - <field type="INT64" name="counter_value" /> - <field type="INT64" name="alarm_value" /> + <field type="sync:INT64" name="counter_value" /> + <field type="sync:INT64" name="alarm_value" /> <field type="TIMESTAMP" name="timestamp" /> <field type="CARD8" name="state" enum="ALARMSTATE" /> <pad bytes="3" /> diff --git a/libxcb/xcb-proto/src/xkb.xml b/libxcb/xcb-proto/src/xkb.xml index 45f64127e..2ea659c29 100644 --- a/libxcb/xcb-proto/src/xkb.xml +++ b/libxcb/xcb-proto/src/xkb.xml @@ -130,29 +130,21 @@ authorization from the authors. <item name="ControlsEnabled"> <bit>31</bit> </item> </enum> - <enum name="AXFBOpt"> + <enum name="AXOption"> <item name="SKPressFB"> <bit>0</bit> </item> <item name="SKAcceptFB"> <bit>1</bit> </item> <item name="FeatureFB"> <bit>2</bit> </item> <item name="SlowWarnFB"> <bit>3</bit> </item> <item name="IndicatorFB"> <bit>4</bit> </item> <item name="StickyKeysFB"> <bit>5</bit> </item> - <item name="SKReleaseFB"> <bit>6</bit> </item> - <item name="SKRejectFB"> <bit>7</bit> </item> - <item name="BKRejectFB"> <bit>8</bit> </item> - <item name="DumbBell"> <bit>9</bit> </item> + <item name="TwoKeys"> <bit>6</bit> </item> + <item name="LatchToLock"> <bit>7</bit> </item> + <item name="SKReleaseFB"> <bit>8</bit> </item> + <item name="SKRejectFB"> <bit>9</bit> </item> + <item name="BKRejectFB"> <bit>10</bit> </item> + <item name="DumbBell"> <bit>11</bit> </item> </enum> - <enum name="AXSKOpt"> - <item name="TwoKeys"> <bit>6</bit> </item> - <item name="LatchToLock"> <bit>7</bit> </item> - </enum> - - <union name="AXOption"> - <field name="fbopt" type="CARD16" enum="AXFBOpt" /> - <field name="skopt" type="CARD16" enum="AXSKOpt" /> - </union> - <typedef oldname="CARD16" newname="DeviceSpec" /> <enum name="LedClassResult"> @@ -1229,10 +1221,10 @@ authorization from the authors. <field name="mouseKeysTimeToMax" type="CARD16" /> <field name="mouseKeysMaxSpeed" type="CARD16" /> <field name="mouseKeysCurve" type="INT16" /> - <field name="accessXOption" type="AXOption" /> + <field name="accessXOption" type="CARD16" mask="AXOption" /> <field name="accessXTimeout" type="CARD16" /> - <field name="accessXTimeoutOptionsMask" type="AXOption" /> - <field name="accessXTimeoutOptionsValues" type="AXOption" /> + <field name="accessXTimeoutOptionsMask" type="CARD16" mask="AXOption" /> + <field name="accessXTimeoutOptionsValues" type="CARD16" mask="AXOption" /> <pad bytes="2" /> <field name="accessXTimeoutMask" type="CARD32" mask="BoolCtrl" /> <field name="accessXTimeoutValues" type="CARD32" mask="BoolCtrl" /> @@ -1255,7 +1247,7 @@ authorization from the authors. <field name="ignoreLockVirtualMods" type="CARD16" mask="VMod" /> <field name="mouseKeysDfltBtn" type="CARD8" /> <field name="groupsWrap" type="CARD8" /> - <field name="accessXOptions" type="AXOption" /> + <field name="accessXOptions" type="CARD16" mask="AXOption" /> <pad bytes="2" /> <field name="affectEnabledControls" type="CARD32" mask="BoolCtrl" /> <field name="enabledControls" type="CARD32" mask="BoolCtrl" /> @@ -1272,8 +1264,8 @@ authorization from the authors. <field name="accessXTimeout" type="CARD16" /> <field name="accessXTimeoutMask" type="CARD32" mask="BoolCtrl" /> <field name="accessXTimeoutValues" type="CARD32" mask="BoolCtrl" /> - <field name="accessXTimeoutOptionsMask" type="AXOption" /> - <field name="accessXTimeoutOptionsValues" type="AXOption" /> + <field name="accessXTimeoutOptionsMask" type="CARD16" mask="AXOption" /> + <field name="accessXTimeoutOptionsValues" type="CARD16" mask="AXOption" /> <list name="perKeyRepeat" type="CARD8"> <value>32</value> </list> diff --git a/libxcb/xcb-proto/src/xproto.xml b/libxcb/xcb-proto/src/xproto.xml index 16e04b442..defa11e6e 100644 --- a/libxcb/xcb-proto/src/xproto.xml +++ b/libxcb/xcb-proto/src/xproto.xml @@ -1080,7 +1080,21 @@ The number of keycodes altered. </doc> </event> - + <event name="ge" number="35" xge="true"> + <pad bytes="22" /> + <doc> + <brief>generic event (with length)</brief> + <field name="extension"><![CDATA[ +The major opcode of the extension creating this event + ]]></field> + <field name="length"><![CDATA[ +The amount (in 4-byte units) of data beyond 32 bytes + ]]></field> + <field name="evtype"><![CDATA[ +The extension-specific event type + ]]></field> + </doc> + </event> <!-- Core error types --> |