aboutsummaryrefslogtreecommitdiff
path: root/libxcb/xcb-proto
diff options
context:
space:
mode:
Diffstat (limited to 'libxcb/xcb-proto')
-rw-r--r--libxcb/xcb-proto/src/composite.xml2
-rw-r--r--libxcb/xcb-proto/src/glx.xml15
-rw-r--r--libxcb/xcb-proto/src/randr.xml231
-rw-r--r--libxcb/xcb-proto/src/res.xml9
-rw-r--r--libxcb/xcb-proto/src/xfixes.xml4
-rw-r--r--libxcb/xcb-proto/src/xtest.xml3
6 files changed, 240 insertions, 24 deletions
diff --git a/libxcb/xcb-proto/src/composite.xml b/libxcb/xcb-proto/src/composite.xml
index d16b6e746..535a0eecf 100644
--- a/libxcb/xcb-proto/src/composite.xml
+++ b/libxcb/xcb-proto/src/composite.xml
@@ -26,7 +26,7 @@ authorization from the authors.
-->
<!-- This file describes version 0.3 of COMPOSITE. -->
<xcb header="composite" extension-xname="Composite" extension-name="Composite"
- major-version="0" minor-version="3">
+ major-version="0" minor-version="4">
<import>xproto</import>
<import>xfixes</import>
diff --git a/libxcb/xcb-proto/src/glx.xml b/libxcb/xcb-proto/src/glx.xml
index 53c926737..2a36daadd 100644
--- a/libxcb/xcb-proto/src/glx.xml
+++ b/libxcb/xcb-proto/src/glx.xml
@@ -45,8 +45,7 @@ The patch that fixed this server bug in X.org CVS is here:
-->
<xcb header="glx" extension-xname="GLX" extension-name="Glx"
- major-version="1" minor-version="3">
- <!-- target support: 1.3 -->
+ major-version="1" minor-version="4">
<import>xproto</import>
@@ -107,6 +106,18 @@ The patch that fixed this server bug in X.org CVS is here:
<pad bytes="4" />
</event>
+ <event name="BufferSwapComplete" number="1">
+ <pad bytes="1" />
+ <field type="CARD16" name="event_type" />
+ <pad bytes="2" />
+ <field type="glx:DRAWABLE" name="drawable" />
+ <field type="CARD32" name="ust_hi" />
+ <field type="CARD32" name="ust_lo" />
+ <field type="CARD32" name="msc_hi" />
+ <field type="CARD32" name="msc_lo" />
+ <field type="CARD32" name="sbc" />
+ </event>
+
<!-- enums for PbufferClobber event/draw type -->
<enum name="PBCET">
<item name="Damaged">
diff --git a/libxcb/xcb-proto/src/randr.xml b/libxcb/xcb-proto/src/randr.xml
index 4f0716f7c..1ec3234fb 100644
--- a/libxcb/xcb-proto/src/randr.xml
+++ b/libxcb/xcb-proto/src/randr.xml
@@ -27,7 +27,7 @@ authorization from the authors.
-->
<xcb header="randr" extension-xname="RANDR" extension-name="RandR"
- major-version="1" minor-version="3">
+ major-version="1" minor-version="4">
<import>xproto</import>
<import>render</import>
@@ -36,12 +36,14 @@ authorization from the authors.
<xidtype name="MODE" />
<xidtype name="CRTC" />
<xidtype name="OUTPUT" />
+ <xidtype name="PROVIDER" />
<!-- Errors -->
- <error name="BadOutput" number="0" />
- <error name="BadCrtc" number="1" />
- <error name="BadMode" number="2" />
+ <error name="BadOutput" number="0" />
+ <error name="BadCrtc" number="1" />
+ <error name="BadMode" number="2" />
+ <error name="BadProvider" number="3" />
<!-- Requests -->
@@ -113,11 +115,15 @@ authorization from the authors.
<!-- opcode 3 is obsolete -->
<enum name="NotifyMask" >
- <item name="ScreenChange"> <bit>0</bit></item>
- <!-- new in 1.2 -->
- <item name="CrtcChange"> <bit>1</bit></item>
- <item name="OutputChange"> <bit>2</bit></item>
- <item name="OutputProperty"><bit>3</bit></item>
+ <item name="ScreenChange"> <bit>0</bit></item>
+ <!-- New in version 1.2 -->
+ <item name="CrtcChange"> <bit>1</bit></item>
+ <item name="OutputChange"> <bit>2</bit></item>
+ <item name="OutputProperty"> <bit>3</bit></item>
+ <!-- New in version 1.4 -->
+ <item name="ProviderChange"> <bit>4</bit></item>
+ <item name="ProviderProperty"><bit>5</bit></item>
+ <item name="ResourceChange"> <bit>6</bit></item>
</enum>
<request name="SelectInput" opcode="4">
@@ -506,6 +512,14 @@ authorization from the authors.
</reply>
</request>
+ <enum name="Transform">
+ <!-- Introduced in version 1.3, but not referenced. -->
+ <item name="Unit"> <bit>0</bit></item>
+ <item name="ScaleUp"> <bit>1</bit></item>
+ <item name="ScaleDown"> <bit>2</bit></item>
+ <item name="Projective"> <bit>3</bit></item>
+ </enum>
+
<request name="SetCrtcTransform" opcode="26">
<field type="CRTC" name="crtc" />
<field type="TRANSFORM" name="transform" />
@@ -599,6 +613,163 @@ authorization from the authors.
</reply>
</request>
+ <!-- New in version 1.4 -->
+
+ <request name="GetProviders" opcode="32">
+ <field type="WINDOW" name="window" />
+ <reply>
+ <pad bytes="1" />
+ <field type="TIMESTAMP" name="timestamp" />
+ <field type="CARD16" name="num_providers" />
+ <pad bytes="18" />
+ <list type="PROVIDER" name="providers">
+ <fieldref>num_providers</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <enum name="ProviderCapability">
+ <item name="SourceOutput"> <bit>0</bit></item>
+ <item name="SinkOutput"> <bit>1</bit></item>
+ <item name="SourceOffload"> <bit>2</bit></item>
+ <item name="SinkOffload"> <bit>3</bit></item>
+ </enum>
+
+ <request name="GetProviderInfo" opcode="33">
+ <field type="PROVIDER" name="provider" />
+ <field type="TIMESTAMP" name="config_timestamp" />
+ <reply>
+ <field type="CARD8" name="status" />
+ <field type="TIMESTAMP" name="timestamp" />
+ <field type="CARD32" name="capabilities" mask="ProviderCapability" />
+ <field type="CARD16" name="num_crtcs" />
+ <field type="CARD16" name="num_outputs" />
+ <field type="CARD16" name="num_associated_providers" />
+ <field type="CARD16" name="name_len" />
+ <pad bytes="8" />
+ <list type="CRTC" name="crtcs">
+ <fieldref>num_crtcs</fieldref>
+ </list>
+ <list type="OUTPUT" name="outputs">
+ <fieldref>num_outputs</fieldref>
+ </list>
+ <list type="PROVIDER" name="associated_providers">
+ <fieldref>num_associated_providers</fieldref>
+ </list>
+ <list type="CARD32" name="associated_capability">
+ <fieldref>num_associated_providers</fieldref>
+ </list>
+ <list type="char" name="name">
+ <fieldref>name_len</fieldref>
+ </list>
+ <!-- XXX: Prepared for the future. Until xcbgen supports
+ the align attribute in <pad>, we ignore the
+ trailing pad bytes here.
+ <pad align="4" />
+ -->
+ </reply>
+ </request>
+
+ <request name="SetProviderOffloadSink" opcode="34">
+ <field type="PROVIDER" name="provider" />
+ <field type="PROVIDER" name="sink_provider" />
+ <field type="TIMESTAMP" name="config_timestamp" />
+ </request>
+
+ <request name="SetProviderOutputSource" opcode="35">
+ <field type="PROVIDER" name="provider" />
+ <field type="PROVIDER" name="source_provider" />
+ <field type="TIMESTAMP" name="config_timestamp" />
+ </request>
+
+ <request name="ListProviderProperties" opcode="36">
+ <field type="PROVIDER" name="provider" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="num_atoms" />
+ <pad bytes="22" />
+ <list type="ATOM" name="atoms">
+ <fieldref>num_atoms</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="QueryProviderProperty" opcode="37">
+ <field type="PROVIDER" name="provider" />
+ <field type="ATOM" name="property" />
+ <reply>
+ <pad bytes="1" />
+ <field type="BOOL" name="pending" />
+ <field type="BOOL" name="range" />
+ <field type="BOOL" name="immutable" />
+ <pad bytes="21" />
+ <list type="INT32" name="valid_values">
+ <fieldref>length</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="ConfigureProviderProperty" opcode="38">
+ <field type="PROVIDER" name="provider" />
+ <field type="ATOM" name="property" />
+ <field type="BOOL" name="pending" />
+ <field type="BOOL" name="range" />
+ <pad bytes="2" />
+ <list type="INT32" name="values" />
+ </request>
+
+ <request name="ChangeProviderProperty" opcode="39">
+ <field type="PROVIDER" name="provider" />
+ <field type="ATOM" name="property" />
+ <field type="ATOM" name="type" />
+ <field type="CARD8" name="format" />
+ <field type="CARD8" name="mode" />
+ <pad bytes="2" />
+ <field type="CARD32" name="num_items" />
+ <list type="void" name="data">
+ <op op="*">
+ <fieldref>num_items</fieldref>
+ <op op="/">
+ <fieldref>format</fieldref>
+ <value>8</value>
+ </op>
+ </op>
+ </list>
+ </request>
+
+ <request name="DeleteProviderProperty" opcode="40">
+ <field type="PROVIDER" name="provider" />
+ <field type="ATOM" name="property" />
+ </request>
+
+ <request name="GetProviderProperty" opcode="41">
+ <field type="PROVIDER" name="provider" />
+ <field type="ATOM" name="property" />
+ <field type="ATOM" name="type" /> <!-- AnyProperty -->
+ <field type="CARD32" name="long_offset" />
+ <field type="CARD32" name="long_length" />
+ <field type="BOOL" name="delete" />
+ <field type="BOOL" name="pending" />
+ <pad bytes="2" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD8" name="format" />
+ <field type="ATOM" name="type" /> <!-- None -->
+ <field type="CARD32" name="bytes_after" />
+ <field type="CARD16" name="num_items" />
+ <pad bytes="12" />
+ <list type="void" name="data">
+ <op op="*">
+ <fieldref>num_items</fieldref>
+ <op op="/">
+ <fieldref>format</fieldref>
+ <value>8</value>
+ </op>
+ </op>
+ </list>
+ </reply>
+ </request>
+
<!-- Events -->
<event name="ScreenChangeNotify" number="0">
@@ -619,9 +790,12 @@ authorization from the authors.
<!-- subcode -->
<enum name="Notify" >
- <item name="CrtcChange"> <value>0</value></item>
- <item name="OutputChange"> <value>1</value></item>
- <item name="OutputProperty"><value>2</value></item>
+ <item name="CrtcChange"> <value>0</value></item>
+ <item name="OutputChange"> <value>1</value></item>
+ <item name="OutputProperty"> <value>2</value></item>
+ <item name="ProviderChange"> <value>3</value></item>
+ <item name="ProviderProperty"><value>4</value></item>
+ <item name="ResourceChange"> <value>5</value></item>
</enum>
<struct name="CrtcChange">
@@ -658,10 +832,37 @@ authorization from the authors.
<pad bytes="11" />
</struct>
+ <!-- New in version 1.4 -->
+
+ <struct name="ProviderChange">
+ <field type="TIMESTAMP" name="timestamp" />
+ <field type="WINDOW" name="window" />
+ <field type="PROVIDER" name="provider" />
+ <pad bytes="16" />
+ </struct>
+
+ <struct name="ProviderProperty">
+ <field type="WINDOW" name="window" />
+ <field type="PROVIDER" name="provider" />
+ <field type="ATOM" name="atom" />
+ <field type="TIMESTAMP" name="timestamp" />
+ <field type="CARD8" name="state" />
+ <pad bytes="11" />
+ </struct>
+
+ <struct name="ResourceChange">
+ <field type="TIMESTAMP" name="timestamp" />
+ <field type="WINDOW" name="window" />
+ <pad bytes="20" />
+ </struct>
+
<union name="NotifyData">
- <field type="CrtcChange" name="cc" />
- <field type="OutputChange" name="oc" />
- <field type="OutputProperty" name="op" />
+ <field type="CrtcChange" name="cc" />
+ <field type="OutputChange" name="oc" />
+ <field type="OutputProperty" name="op" />
+ <field type="ProviderChange" name="pc" />
+ <field type="ProviderProperty" name="pp" />
+ <field type="ResourceChange" name="rc" />
</union>
<event name="Notify" number="1">
diff --git a/libxcb/xcb-proto/src/res.xml b/libxcb/xcb-proto/src/res.xml
index 1dd3bd196..17e6f833d 100644
--- a/libxcb/xcb-proto/src/res.xml
+++ b/libxcb/xcb-proto/src/res.xml
@@ -41,15 +41,20 @@ authorization from the authors.
</struct>
<!-- v1.2 -->
+ <enum name="ClientIdMask">
+ <item name="ClientXID"> <bit>0</bit> </item>
+ <item name="LocalClientPID"> <bit>1</bit> </item>
+ </enum>
+
<struct name="ClientIdSpec">
<field type="CARD32" name="client" />
- <field type="CARD32" name="mask" />
+ <field type="CARD32" name="mask" mask="ClientIdMask" />
</struct>
<struct name="ClientIdValue">
<field type="ClientIdSpec" name="spec" />
<field type="CARD32" name="length" />
- <list type="CARD8" name="client_ids">
+ <list type="CARD32" name="value">
<fieldref>length</fieldref>
</list>
</struct>
diff --git a/libxcb/xcb-proto/src/xfixes.xml b/libxcb/xcb-proto/src/xfixes.xml
index cbc75427b..7b9be170b 100644
--- a/libxcb/xcb-proto/src/xfixes.xml
+++ b/libxcb/xcb-proto/src/xfixes.xml
@@ -336,7 +336,7 @@ authorization from the authors.
<xidtype name="BARRIER" />
- <enum name="DirectionMask">
+ <enum name="BarrierDirections">
<item name="PositiveX"><bit>0</bit></item>
<item name="PositiveY"><bit>1</bit></item>
<item name="NegativeX"><bit>2</bit></item>
@@ -350,7 +350,7 @@ authorization from the authors.
<field type="CARD16" name="y1" />
<field type="CARD16" name="x2" />
<field type="CARD16" name="y2" />
- <field type="CARD32" name="directions" mask="DirectionMask" />
+ <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>
diff --git a/libxcb/xcb-proto/src/xtest.xml b/libxcb/xcb-proto/src/xtest.xml
index 7f0b2623c..085d3a3dc 100644
--- a/libxcb/xcb-proto/src/xtest.xml
+++ b/libxcb/xcb-proto/src/xtest.xml
@@ -27,8 +27,7 @@ authorization from the authors.
-->
<xcb header="xtest" extension-xname="XTEST" extension-name="Test"
- major-version="2" minor-version="1">
- <!-- Conforms to XTEST 2.1 -->
+ major-version="2" minor-version="2">
<import>xproto</import>