aboutsummaryrefslogtreecommitdiff
path: root/libxcb/xcb-proto/src
diff options
context:
space:
mode:
Diffstat (limited to 'libxcb/xcb-proto/src')
-rw-r--r--libxcb/xcb-proto/src/Makefile.am2
-rw-r--r--libxcb/xcb-proto/src/dri3.xml97
-rw-r--r--libxcb/xcb-proto/src/present.xml205
-rw-r--r--libxcb/xcb-proto/src/shm.xml21
-rw-r--r--libxcb/xcb-proto/src/sync.xml24
-rw-r--r--libxcb/xcb-proto/src/xkb.xml34
-rw-r--r--libxcb/xcb-proto/src/xproto.xml16
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 -->