[Xcb-commit] Branch 'debian' - 17 commits - NEWS configure.ac src
Josh Triplett
josh at kemper.freedesktop.org
Fri Nov 24 00:45:32 PST 2006
NEWS | 33 +++++++++++++++++++++
configure.ac | 2 -
src/Makefile.am | 46 +++++++++++++++---------------
src/bigreq.xml | 4 +-
src/composite.xml | 4 +-
src/damage.xml | 3 +
src/dpms.xml | 3 +
src/glx.xml | 62 +++++++++++++++++++++++++++-------------
src/randr.xml | 31 ++++++++++----------
src/record.xml | 3 +
src/render.xml | 11 ++++++-
src/res.xml | 3 +
src/screensaver.xml | 3 +
src/shape.xml | 2 -
src/shm.xml | 3 +
src/sync.xml | 3 +
src/xc_misc.xml | 3 +
src/xcb.xsd | 6 +--
src/xevie.xml | 3 +
src/xf86dri.xml | 3 +
src/xfixes.xml | 3 +
src/xinerama.xml | 79 ++++++++++++++++++++++++++++++++--------------------
src/xprint.xml | 4 +-
src/xproto.xml | 10 +++---
src/xtest.xml | 5 +--
src/xv.xml | 7 +---
src/xvmc.xml | 2 -
27 files changed, 219 insertions(+), 122 deletions(-)
New commits:
diff-tree e3a16271190c6b85df5ae8408c89b02aa0c14b51 (from parents)
Merge: 3f45ca8861baedbfdd6dbd393db39ce5a8481614 701dec025966bd19dcd1a6ae6f277abf3f1abd16
Author: Josh Triplett <josh at freedesktop.org>
Date: Fri Nov 24 00:24:48 2006 -0800
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xcb/proto into debian
diff-tree 701dec025966bd19dcd1a6ae6f277abf3f1abd16 (from 1df54ae21a42aa20538e3123a9c2d9f4d6c07c94)
Author: Josh Triplett <josh at freedesktop.org>
Date: Thu Nov 23 07:21:09 2006 -0800
Release xcb-proto 1.0
diff --git a/NEWS b/NEWS
index 7fe8302..10a2284 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,19 @@
+Release 1.0 (2006-11-23)
+========================
+
+The "Thanksgiving" release: We feel thankful to have it released.
+
+* Fix Bug #8990: randr type fixes
+* Fixed screen parameter type in several GLX requests to use CARD32 instead
+ of the SCREEN structure.
+* Corrected valueparam arguments to attribute lists in several requests and
+ a reply.
+* Estethic change for attribute parameter name
+* Remove support for the <localfield> tag: nothing needs it.
+* Fix Bug #8973: In UngrabKey, the 'key' field should have type KEYCODE, not
+ the more general CARD8.
+
+
Release 1.0 RC3 (2006-11-02)
============================
diff --git a/configure.ac b/configure.ac
index 133dcaa..8b94249 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,7 +3,7 @@
AC_PREREQ(2.57)
AC_INIT([XCB Proto],
- 0.9.93,
+ 1.0,
[xcb at lists.freedesktop.org])
AC_CONFIG_SRCDIR([xcb-proto.pc.in])
AM_INIT_AUTOMAKE([foreign dist-bzip2])
diff-tree 1df54ae21a42aa20538e3123a9c2d9f4d6c07c94 (from 186c79774257193307f92d2cf2008a18bcd68393)
Author: Vincent Torri <vtorri at univ-evry.fr>
Date: Tue Nov 21 21:57:38 2006 -0800
Bug #8990: randr type fixes
diff --git a/src/randr.xml b/src/randr.xml
index 515c320..8a46f3c 100644
--- a/src/randr.xml
+++ b/src/randr.xml
@@ -71,17 +71,17 @@ authorization from the authors.
BEWARE: the docs lie!
-->
<request name="SetScreenConfig" opcode="2">
- <field type="WINDOW" name="drawable" />
- <field type="CARD32" name="timestamp" />
- <field type="CARD32" name="config_timestamp" />
+ <field type="DRAWABLE" name="drawable" />
+ <field type="TIMESTAMP" name="timestamp" />
+ <field type="TIMESTAMP" name="config_timestamp" />
<field type="CARD16" name="sizeID" />
<field type="INT16" name="rotation" />
- <field type="CARD16" name="refresh" />
+ <field type="CARD16" name="rate" />
<pad bytes="2" />
<reply>
<field type="CARD8" name="status" />
- <field type="CARD32" name="timestamp" />
- <field type="CARD32" name="config_timestamp" />
+ <field type="TIMESTAMP" name="new_timestamp" />
+ <field type="TIMESTAMP" name="config_timestamp" />
<field type="WINDOW" name="root" />
<field type="CARD16" name="subpixel_order" />
<pad bytes="10" />
@@ -109,8 +109,8 @@ authorization from the authors.
<reply>
<field type="CARD8" name="rotations" />
<field type="WINDOW" name="root" />
- <field type="CARD32" name="timestamp" />
- <field type="CARD32" name="config_timestamp" />
+ <field type="TIMESTAMP" name="timestamp" />
+ <field type="TIMESTAMP" name="config_timestamp" />
<field type="CARD16" name="nSizes" />
<field type="CARD16" name="sizeID" />
<field type="INT16" name="rotation" />
@@ -135,16 +135,16 @@ authorization from the authors.
<event name="ScreenChangeNotify" number="0">
<field type="CARD8" name="rotation" />
- <field type="CARD32" name="timestamp" />
- <field type="CARD32" name="config_timestamp" />
+ <field type="TIMESTAMP" name="timestamp" />
+ <field type="TIMESTAMP" name="config_timestamp" />
<field type="WINDOW" name="root" />
<field type="WINDOW" name="request_window" />
<field type="CARD16" name="sizeID" />
<field type="CARD16" name="subpixel_order" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="CARD16" name="mwidth" />
- <field type="CARD16" name="mheight" />
+ <field type="INT16" name="width" />
+ <field type="INT16" name="height" />
+ <field type="INT16" name="mwidth" />
+ <field type="INT16" name="mheight" />
</event>
</xcb>
diff-tree 186c79774257193307f92d2cf2008a18bcd68393 (from a4681227e8a7d8622b3d6995b6700e18e91067c6)
Author: Patrick Guimond <patg at patg.homeunix.org>
Date: Wed Nov 8 17:34:33 2006 -0500
Estethic change for attribute parameter name
Changed num_attributes parameter of QueryContext request to num_attribs
for consistency with other requests
diff --git a/src/glx.xml b/src/glx.xml
index 6181408..feaffce 100644
--- a/src/glx.xml
+++ b/src/glx.xml
@@ -369,11 +369,11 @@ The patch that fixed this server bug in
<field type="glx:CONTEXT" name="context" />
<reply>
<pad bytes="1" />
- <field type="CARD32" name="num_attributes"/>
+ <field type="CARD32" name="num_attribs"/>
<pad bytes="20" />
<list type="CARD32" name="attribs">
<op op="*">
- <fieldref>num_attributes</fieldref>
+ <fieldref>num_attribs</fieldref>
<value>2</value>
</op>
</list>
diff-tree a4681227e8a7d8622b3d6995b6700e18e91067c6 (from 015b2696afd0824590dd9952bd8ba61a9d5ab6e2)
Author: Patrick Guimond <patg at patg.homeunix.org>
Date: Wed Nov 8 17:32:43 2006 -0500
fixed screen parameter type in requests
For the following requests, fixed the paramater type to be CARD32 instead
of SCREEN structure
Requests: - CreateNewContext
- CreatePbuffer
- CreateWindow
diff --git a/src/glx.xml b/src/glx.xml
index e7ec59e..6181408 100644
--- a/src/glx.xml
+++ b/src/glx.xml
@@ -357,7 +357,7 @@ The patch that fixed this server bug in
<request name="CreateNewContext" opcode="24">
<field type="glx:CONTEXT" name="context" />
<field type="CARD32" name="fbconfig" />
- <field type="SCREEN" name="screen" />
+ <field type="CARD32" name="screen" />
<field type="CARD32" name="render_type" />
<field type="CARD32" name="share_list" />
<field type="BOOL" name="is_direct" />
@@ -393,7 +393,7 @@ The patch that fixed this server bug in
</request>
<request name="CreatePbuffer" opcode="27">
- <field type="SCREEN" name="screen" />
+ <field type="CARD32" name="screen" />
<field type="FBCONFIG" name="fbconfig" />
<field type="PBUFFER" name="pbuffer" />
<field type="CARD32" name="num_attribs" />
@@ -436,7 +436,7 @@ The patch that fixed this server bug in
</request>
<request name="CreateWindow" opcode="31">
- <field type="SCREEN" name="screen" />
+ <field type="CARD32" name="screen" />
<field type="FBCONFIG" name="fbconfig" />
<field type="xproto:WINDOW" name="window" />
<field type="glx:WINDOW" name="glx_window" />
diff-tree 015b2696afd0824590dd9952bd8ba61a9d5ab6e2 (from 854d08c8242e8fbe7b5a000b75ec6845419806c4)
Author: Patrick Guimond <patg at patg.homeunix.org>
Date: Wed Nov 8 17:29:43 2006 -0500
Changed valueparam arguments for attribute lists
For following request and replies, substitutes attribute list passing
to a parameter list instead of valuemask/values
Requests: - CreatePixmap
- QueryContext
- CreatePbuffer
- ChangeDrawableAttributes
- CreateWindow
Reply: - GetDrawableAttributes
diff --git a/src/glx.xml b/src/glx.xml
index 4f4a822..e7ec59e 100644
--- a/src/glx.xml
+++ b/src/glx.xml
@@ -342,6 +342,12 @@ The patch that fixed this server bug in
<field type="xproto:PIXMAP" name="pixmap" />
<field type="glx:PIXMAP" name="glx_pixmap" />
<field type="CARD32" name="num_attribs" />
+ <list type="CARD32" name="attribs">
+ <op op="*">
+ <fieldref>num_attribs</fieldref>
+ <value>2</value>
+ </op>
+ </list>
</request>
<request name="DestroyPixmap" opcode="23">
@@ -365,9 +371,12 @@ The patch that fixed this server bug in
<pad bytes="1" />
<field type="CARD32" name="num_attributes"/>
<pad bytes="20" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
+ <list type="CARD32" name="attribs">
+ <op op="*">
+ <fieldref>num_attributes</fieldref>
+ <value>2</value>
+ </op>
+ </list>
</reply>
</request>
@@ -388,9 +397,12 @@ The patch that fixed this server bug in
<field type="FBCONFIG" name="fbconfig" />
<field type="PBUFFER" name="pbuffer" />
<field type="CARD32" name="num_attribs" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
+ <list type="CARD32" name="attribs">
+ <op op="*">
+ <fieldref>num_attribs</fieldref>
+ <value>2</value>
+ </op>
+ </list>
</request>
<request name="DestroyPbuffer" opcode="28">
@@ -403,18 +415,24 @@ The patch that fixed this server bug in
<pad bytes="1" />
<field type="CARD32" name="num_attribs" />
<pad bytes="20" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
+ <list type="CARD32" name="attribs">
+ <op op="*">
+ <fieldref>num_attribs</fieldref>
+ <value>2</value>
+ </op>
+ </list>
</reply>
</request>
<request name="ChangeDrawableAttributes" opcode="30">
<field type="glx:DRAWABLE" name="drawable" />
<field type="CARD32" name="num_attribs" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
+ <list type="CARD32" name="attribs">
+ <op op="*">
+ <fieldref>num_attribs</fieldref>
+ <value>2</value>
+ </op>
+ </list>
</request>
<request name="CreateWindow" opcode="31">
@@ -423,9 +441,12 @@ The patch that fixed this server bug in
<field type="xproto:WINDOW" name="window" />
<field type="glx:WINDOW" name="glx_window" />
<field type="CARD32" name="num_attribs" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
+ <list type="CARD32" name="attribs">
+ <op op="*">
+ <fieldref>num_attribs</fieldref>
+ <value>2</value>
+ </op>
+ </list>
</request>
<request name="DeleteWindow" opcode="32">
diff-tree 854d08c8242e8fbe7b5a000b75ec6845419806c4 (from 36134f48236f50aeee386b36be7e82c809688bc8)
Author: Jamey Sharp <jamey at minilop.net>
Date: Sun Nov 19 14:51:26 2006 -0800
Remove support for the <localfield> tag: nothing needs it.
Only one use of <localfield> remained, for a list length expression in
xv.xml. List length parameters that don't actually appear in the
protocol should be left implicit: if no length expression is given, then
a localfield will be automatically created by c-client.xsl.
diff --git a/src/xcb.xsd b/src/xcb.xsd
index 13ca7de..674a185 100644
--- a/src/xcb.xsd
+++ b/src/xcb.xsd
@@ -67,9 +67,6 @@ authorization from the authors.
</xsd:complexType>
</xsd:element>
- <!-- Parameters in requests that are not sent with the request. -->
- <xsd:element name="localfield" type="var" />
-
<!-- Expressions -->
<xsd:group name="expression">
<xsd:choice>
@@ -162,7 +159,6 @@ authorization from the authors.
<xsd:sequence>
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:group ref="fields" />
- <xsd:element ref="localfield" />
<xsd:element ref="exprfield" />
<xsd:element ref="valueparam" />
</xsd:choice>
diff --git a/src/xv.xml b/src/xv.xml
index 1694f2b..bbaa4eb 100644
--- a/src/xv.xml
+++ b/src/xv.xml
@@ -402,10 +402,7 @@ authorization from the authors.
<field type="CARD16" name="drw_h" />
<field type="CARD16" name="width" />
<field type="CARD16" name="height" />
- <localfield type="CARD32" name="data_size" />
- <list type="CARD8" name="data">
- <fieldref>data_size</fieldref>
- </list>
+ <list type="CARD8" name="data" />
</request>
<request name="ShmPutImage" opcode="19">
diff-tree 36134f48236f50aeee386b36be7e82c809688bc8 (from 38ded0002498cfe125e66dbc513071448f7480f5)
Author: Jamey Sharp <jamey at minilop.net>
Date: Sat Nov 11 16:12:54 2006 -0800
Bug #8973: In UngrabKey, the 'key' field is of type KEYCODE, not the more general CARD8.
Thanks to Vincent Torri for pointing out the error.
diff --git a/src/xproto.xml b/src/xproto.xml
index 514659d..8254d11 100644
--- a/src/xproto.xml
+++ b/src/xproto.xml
@@ -1086,7 +1086,7 @@ authorization from the authors.
</request>
<request name="UngrabKey" opcode="34">
- <field type="CARD8" name="key" />
+ <field type="KEYCODE" name="key" />
<field type="WINDOW" name="grab_window" />
<field type="CARD16" name="modifiers" />
</request>
diff-tree 38ded0002498cfe125e66dbc513071448f7480f5 (from 372f3b46eca54ac3cf6fbf9162742289ddfeac1e)
Author: Jamey Sharp <jamey at minilop.net>
Date: Thu Nov 2 16:49:43 2006 -0800
Release xcb-proto 1.0 RC3 (0.9.93).
diff --git a/NEWS b/NEWS
index dd18f3d..7fe8302 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,20 @@
+Release 1.0 RC3 (2006-11-02)
+============================
+
+* Add support for the Xinerama extension, version 1.1
+* Protocol descriptions now document the major and minor version numbers
+ of the extension version they support, through major-version and
+ minor-version attributes on the xcb tag. XML Schema updated
+ accordingly.
+* Minor source reorganization: Now that the extensions do not get
+ installed to an extensions/ subdirectory, move them out of the
+ extensions/ subdirectory in the source as well.
+* Various protocol description fixes:
+ * Add REPEAT enumeration to Render extension to fix bug #8535
+ * Fix core xproto GrabMode enumeration (reported by Yang JianJun)
+ * Fix core xproto cap style enumeration (bug #8857).
+
+
Release 1.0 RC2 (2006-10-07)
============================
diff --git a/configure.ac b/configure.ac
index 9d51d75..133dcaa 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,7 +3,7 @@
AC_PREREQ(2.57)
AC_INIT([XCB Proto],
- 0.9.92,
+ 0.9.93,
[xcb at lists.freedesktop.org])
AC_CONFIG_SRCDIR([xcb-proto.pc.in])
AM_INIT_AUTOMAKE([foreign dist-bzip2])
diff-tree 372f3b46eca54ac3cf6fbf9162742289ddfeac1e (from db02bf21d9e3f9d812d808bfcef8dd453656e6fd)
Author: Ian Osgood <iano at quirkster.com>
Date: Wed Nov 1 21:35:24 2006 -0800
Fix cap style enumeration (bug #8857).
diff --git a/src/xproto.xml b/src/xproto.xml
index 7f30694..514659d 100644
--- a/src/xproto.xml
+++ b/src/xproto.xml
@@ -1421,8 +1421,8 @@ authorization from the authors.
<enum name="CapStyle">
<item name="NotLast"> <value>0</value></item>
- <item name="Cap"> <value>1</value></item>
- <item name="Butt"> <value>2</value></item>
+ <item name="Butt"> <value>1</value></item>
+ <item name="Round"> <value>2</value></item>
<item name="Projecting"><value>3</value></item>
</enum>
diff-tree db02bf21d9e3f9d812d808bfcef8dd453656e6fd (from 2df1bbfa953fe7989524c1bc7000f517e121a645)
Author: Jeremy Kolb jkolb at brandeis.edu <jkolb at glorfindel.(none)>
Date: Mon Oct 30 18:10:20 2006 -0500
Update the record extension. Type in the version.
Updated xcb.xsd for major-version and minor-version attributes of the xcb tag.
diff --git a/src/record.xml b/src/record.xml
index 33eb0df..464f4d8 100644
--- a/src/record.xml
+++ b/src/record.xml
@@ -27,7 +27,7 @@ authorization from the authors.
-->
<xcb header="record" extension-xname="RECORD" extension-name="Record"
- major="1" minor="13">
+ major-version="1" minor-version="13">
<!-- Types -->
<xidtype name="CONTEXT" />
diff --git a/src/xcb.xsd b/src/xcb.xsd
index d171656..13ca7de 100644
--- a/src/xcb.xsd
+++ b/src/xcb.xsd
@@ -33,6 +33,8 @@ authorization from the authors.
<xsd:attribute name="header" type="xsd:string" use="required" />
<xsd:attribute name="extension-xname" type="xsd:string" use="optional" />
<xsd:attribute name="extension-name" type="xsd:string" use="optional" />
+ <xsd:attribute name="major-version" type="xsd:integer" use="optional" />
+ <xsd:attribute name="minor-version" type="xsd:integer" use="optional" />
</xsd:complexType>
</xsd:element>
diff-tree 2df1bbfa953fe7989524c1bc7000f517e121a645 (from c10a77848f9318856129161be08a05379ffb39de)
Author: Jeremy Kolb jkolb at brandeis.edu <jkolb at glorfindel.(none)>
Date: Sun Oct 29 19:27:53 2006 -0500
Added major-version and minor-version attributes to the xcb tag.
diff --git a/src/bigreq.xml b/src/bigreq.xml
index 9e99d2e..d58a084 100644
--- a/src/bigreq.xml
+++ b/src/bigreq.xml
@@ -26,7 +26,9 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
<xcb header="bigreq" extension-xname="BIG-REQUESTS"
- extension-name="BigRequests">
+ extension-name="BigRequests"
+ major-version="0" minor-version="0">
+
<request name="Enable" opcode="0">
<reply>
<pad bytes="1" />
diff --git a/src/composite.xml b/src/composite.xml
index 48c90fd..3f3a4b1 100644
--- a/src/composite.xml
+++ b/src/composite.xml
@@ -25,7 +25,9 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
<!-- This file describes version 0.3 of COMPOSITE. -->
-<xcb header="composite" extension-xname="Composite" extension-name="Composite">
+<xcb header="composite" extension-xname="Composite" extension-name="Composite"
+ major-version="0" minor-version="3">
+
<import>xproto</import>
<import>xfixes</import>
diff --git a/src/damage.xml b/src/damage.xml
index 474fd60..4e03057 100644
--- a/src/damage.xml
+++ b/src/damage.xml
@@ -25,7 +25,8 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
<!-- This file describes version 1 of DAMAGE. -->
-<xcb header="damage" extension-xname="DAMAGE" extension-name="Damage">
+<xcb header="damage" extension-xname="DAMAGE" extension-name="Damage"
+ major-version="1" minor-version="0">
<import>xproto</import>
<import>xfixes</import>
diff --git a/src/dpms.xml b/src/dpms.xml
index 27ba98a..0d4fad1 100644
--- a/src/dpms.xml
+++ b/src/dpms.xml
@@ -25,7 +25,8 @@ institutions shall not be used in advert
sale, use or other dealings in this Software without prior written
authorization from the authors.
-->
-<xcb header="dpms" extension-xname="DPMS" extension-name="DPMS">
+<xcb header="dpms" extension-xname="DPMS" extension-name="DPMS"
+ major-version="0" minor-version="0">
<request name="GetVersion" opcode="0">
<field type="CARD16" name="client_major_version" />
<field type="CARD16" name="client_minor_version" />
diff --git a/src/glx.xml b/src/glx.xml
index 5f8b5e6..4f4a822 100644
--- a/src/glx.xml
+++ b/src/glx.xml
@@ -44,7 +44,8 @@ The patch that fixed this server bug in
http://cvs.freedesktop.org/xorg/xserver/xorg/GL/glx/glxcmds.c?r1=1.6&r2=1.7
-->
-<xcb header="glx" extension-xname="GLX" extension-name="Glx">
+<xcb header="glx" extension-xname="GLX" extension-name="Glx"
+ major-version="1" minor-version="3">
<!-- target support: 1.3 -->
<import>xproto</import>
diff --git a/src/randr.xml b/src/randr.xml
index 5c0ccdf..515c320 100644
--- a/src/randr.xml
+++ b/src/randr.xml
@@ -26,7 +26,8 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
-<xcb header="randr" extension-xname="RANDR" extension-name="RandR">
+<xcb header="randr" extension-xname="RANDR" extension-name="RandR"
+ major-version="1" minor-version="1">
<!-- Implements version 1.1 of RANDR -->
<import>xproto</import>
diff --git a/src/record.xml b/src/record.xml
index 09729ad..33eb0df 100644
--- a/src/record.xml
+++ b/src/record.xml
@@ -26,7 +26,8 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
-<xcb header="record" extension-xname="RECORD" extension-name="Record">
+<xcb header="record" extension-xname="RECORD" extension-name="Record"
+ major="1" minor="13">
<!-- Types -->
<xidtype name="CONTEXT" />
diff --git a/src/render.xml b/src/render.xml
index 88e9a40..b538f00 100644
--- a/src/render.xml
+++ b/src/render.xml
@@ -4,7 +4,8 @@ Copyright (C) 2002-2004 Carl D. Worth, J
All Rights Reserved. See the file COPYING in this directory
for licensing information.
-->
-<xcb header="render" extension-xname="RENDER" extension-name="Render">
+<xcb header="render" extension-xname="RENDER" extension-name="Render"
+ major-version="0" minor-version="10">
<!-- supports version 0.10 -->
<import>xproto</import>
diff --git a/src/res.xml b/src/res.xml
index eda0cbe..b046ec2 100644
--- a/src/res.xml
+++ b/src/res.xml
@@ -25,7 +25,8 @@ institutions shall not be used in advert
sale, use or other dealings in this Software without prior written
authorization from the authors.
-->
-<xcb header="res" extension-xname="X-Resource" extension-name="Res">
+<xcb header="res" extension-xname="X-Resource" extension-name="Res"
+ major-version="1" minor-version="0">
<struct name="Client">
<field type="CARD32" name="resource_base" />
<field type="CARD32" name="resource_mask" />
diff --git a/src/screensaver.xml b/src/screensaver.xml
index 1a095de..8acd292 100644
--- a/src/screensaver.xml
+++ b/src/screensaver.xml
@@ -29,7 +29,8 @@ authorization from the authors.
Screen Saver Extension to the X Protocol
Draft Standard Version 1.1
-->
-<xcb header="screensaver" extension-xname="MIT-SCREEN-SAVER" extension-name="ScreenSaver">
+<xcb header="screensaver" extension-xname="MIT-SCREEN-SAVER" extension-name="ScreenSaver" major-version="1" minor-version="1">
+
<!-- Types -->
<import>xproto</import>
diff --git a/src/shape.xml b/src/shape.xml
index 36d0652..a3c929a 100644
--- a/src/shape.xml
+++ b/src/shape.xml
@@ -26,7 +26,7 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
<!-- This file describes version 1.1 of the Shape extension. -->
-<xcb header="shape" extension-xname="SHAPE" extension-name="Shape">
+<xcb header="shape" extension-xname="SHAPE" extension-name="Shape" major-version="1" minor-version="1">
<import>xproto</import>
<typedef oldname="CARD8" newname="OP" />
diff --git a/src/shm.xml b/src/shm.xml
index e576c1f..49e243b 100644
--- a/src/shm.xml
+++ b/src/shm.xml
@@ -25,7 +25,8 @@ institutions shall not be used in advert
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">
+<xcb header="shm" extension-xname="MIT-SHM" extension-name="Shm"
+ major-version="1" minor-version="1">
<import>xproto</import>
<xidtype name="SEG" />
diff --git a/src/sync.xml b/src/sync.xml
index 6efca36..74281f1 100644
--- a/src/sync.xml
+++ b/src/sync.xml
@@ -4,7 +4,8 @@ Copyright (C) 2004 Mikko Torni and Josh
All Rights Reserved. See the file COPYING in this directory
for licensing information.
-->
-<xcb header="sync" extension-xname="SYNC" extension-name="Sync">
+<xcb header="sync" extension-xname="SYNC" extension-name="Sync"
+ major-version="3" minor-version="0">
<import>xproto</import>
<xidtype name="ALARM" />
diff --git a/src/xc_misc.xml b/src/xc_misc.xml
index 8643503..18f5a84 100644
--- a/src/xc_misc.xml
+++ b/src/xc_misc.xml
@@ -4,7 +4,8 @@ Copyright (C) 2004 Mikko Torni and Josh
All Rights Reserved. See the file COPYING in this directory
for licensing information.
-->
-<xcb header="xc_misc" extension-xname="XC-MISC" extension-name="XCMisc">
+<xcb header="xc_misc" extension-xname="XC-MISC" extension-name="XCMisc"
+ major-version="1" minor-version="1">
<request name="GetVersion" opcode="0">
<field type="CARD16" name="client_major_version" />
<field type="CARD16" name="client_minor_version" />
diff --git a/src/xevie.xml b/src/xevie.xml
index 1e5851f..222b412 100644
--- a/src/xevie.xml
+++ b/src/xevie.xml
@@ -25,7 +25,8 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
<!-- This file describes version 1 of XEVIE. -->
-<xcb header="xevie" extension-xname="XEVIE" extension-name="Xevie">
+<xcb header="xevie" extension-xname="XEVIE" extension-name="Xevie"
+ major-version="1" minor-version="0">
<request name="QueryVersion" opcode="0">
<field type="CARD16" name="client_major_version" />
<field type="CARD16" name="client_minor_version" />
diff --git a/src/xf86dri.xml b/src/xf86dri.xml
index bb37ca7..c05b724 100644
--- a/src/xf86dri.xml
+++ b/src/xf86dri.xml
@@ -26,7 +26,8 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
-<xcb header="xf86dri" extension-xname="XFree86-DRI" extension-name="XF86Dri">
+<xcb header="xf86dri" extension-xname="XFree86-DRI" extension-name="XF86Dri"
+ major-version="4" minor-version="1">
<!-- Using http://dri.sourceforge.net/doc/dri_extensions_low_level.txt -->
diff --git a/src/xfixes.xml b/src/xfixes.xml
index 9f890cb..203c2a8 100644
--- a/src/xfixes.xml
+++ b/src/xfixes.xml
@@ -25,7 +25,8 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
<!-- This file describes version 4 of XFixes. -->
-<xcb header="xfixes" extension-xname="XFIXES" extension-name="XFixes">
+<xcb header="xfixes" extension-xname="XFIXES" extension-name="XFixes"
+ major-version="4" minor-version="0">
<import>xproto</import>
<import>render</import>
<import>shape</import>
diff --git a/src/xinerama.xml b/src/xinerama.xml
index 2566787..675325e 100644
--- a/src/xinerama.xml
+++ b/src/xinerama.xml
@@ -26,7 +26,8 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
-<xcb header="xinerama" extension-xname="XINERAMA" extension-name="Xinerama">
+<xcb header="xinerama" extension-xname="XINERAMA" extension-name="Xinerama"
+ major-version="1" minor-version="1">
<!-- Version 1.1 -->
diff --git a/src/xprint.xml b/src/xprint.xml
index 11cd7c0..040b353 100644
--- a/src/xprint.xml
+++ b/src/xprint.xml
@@ -26,7 +26,9 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
-<xcb header="xprint" extension-xname="XpExtension" extension-name="XP">
+<xcb header="xprint" extension-xname="XpExtension" extension-name="XPrint"
+ major-version="1" minor-version="0">
+
<!-- Conforms to XPRINT 1.0 -->
<import>xproto</import>
diff --git a/src/xtest.xml b/src/xtest.xml
index 72adf0b..8e18691 100644
--- a/src/xtest.xml
+++ b/src/xtest.xml
@@ -26,7 +26,8 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
-<xcb header="xtest" extension-xname="XTEST" extension-name="Test">
+<xcb header="xtest" extension-xname="XTEST" extension-name="Test"
+ major-version="2" minor-version="1">
<!-- Conforms to XTEST 2.1 -->
<import>xproto</import>
@@ -102,4 +103,4 @@ authorization from the authors.
<!-- No events or errors -->
-</xcb>
\ No newline at end of file
+</xcb>
diff --git a/src/xv.xml b/src/xv.xml
index b232dea..1694f2b 100644
--- a/src/xv.xml
+++ b/src/xv.xml
@@ -26,7 +26,7 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
-<xcb header="xv" extension-xname="XVideo" extension-name="Xv">
+<xcb header="xv" extension-xname="XVideo" extension-name="Xv" major-version="2" minor-version="2">
<import>xproto</import>
<import>shm</import>
<!-- Implements version 2.2 of XV -->
diff --git a/src/xvmc.xml b/src/xvmc.xml
index e2eb04d..ecfafea 100644
--- a/src/xvmc.xml
+++ b/src/xvmc.xml
@@ -26,7 +26,7 @@ sale, use or other dealings in this Soft
authorization from the authors.
-->
-<xcb header="xvmc" extension-xname="XVideo-MotionCompensation" extension-name="XvMC">
+<xcb header="xvmc" extension-xname="XVideo-MotionCompensation" extension-name="XvMC" major-version="1" minor-version="1">
<import>xv</import>
<xidtype name="CONTEXT" />
diff-tree c10a77848f9318856129161be08a05379ffb39de (from b3423e67845cb6f2b858fb3f22295a5ef79821fb)
Author: Ian Osgood <iano at quirkster.com>
Date: Fri Oct 20 07:38:55 2006 -0700
Fix GrabMode enumeration (reported by Yang JianJun)
diff --git a/src/xproto.xml b/src/xproto.xml
index 7fcbc2f..7f30694 100644
--- a/src/xproto.xml
+++ b/src/xproto.xml
@@ -988,8 +988,8 @@ authorization from the authors.
</request>
<enum name="GrabMode">
- <item name="Async"><value>0</value></item>
- <item name="Sync"> <value>1</value></item>
+ <item name="Sync"> <value>0</value></item>
+ <item name="Async"><value>1</value></item>
</enum>
<enum name="GrabStatus">
diff-tree b3423e67845cb6f2b858fb3f22295a5ef79821fb (from 39a58929682650c0761e3ccfe2f10978ec5f0b74)
Author: Josh Triplett <josh at freedesktop.org>
Date: Sun Oct 15 12:39:04 2006 -0700
Move extension descriptions out of extensions/ subdirectory
Now that the extensions do not get installed to an extensions/ subdirectory,
move them out of the extensions/ subdirectory in the source as well.
diff --git a/src/Makefile.am b/src/Makefile.am
index 20225fa..dd0d329 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,31 +1,30 @@
xcbinclude_HEADERS = \
xcb.xsd \
xproto.xml \
- extensions/bigreq.xml \
- extensions/composite.xml \
- extensions/damage.xml \
- extensions/dpms.xml \
- extensions/glx.xml \
- extensions/randr.xml \
- extensions/record.xml \
- extensions/render.xml \
- extensions/res.xml \
- extensions/screensaver.xml \
- extensions/shape.xml \
- extensions/shm.xml \
- extensions/sync.xml \
- extensions/xc_misc.xml \
- extensions/xevie.xml \
- extensions/xinerama.xml \
- extensions/xf86dri.xml \
- extensions/xfixes.xml \
- extensions/xprint.xml \
- extensions/xtest.xml \
- extensions/xv.xml \
- extensions/xvmc.xml
+ bigreq.xml \
+ composite.xml \
+ damage.xml \
+ dpms.xml \
+ glx.xml \
+ randr.xml \
+ record.xml \
+ render.xml \
+ res.xml \
+ screensaver.xml \
+ shape.xml \
+ shm.xml \
+ sync.xml \
+ xc_misc.xml \
+ xevie.xml \
+ xinerama.xml \
+ xf86dri.xml \
+ xfixes.xml \
+ xprint.xml \
+ xtest.xml \
+ xv.xml \
+ xvmc.xml
if HAVE_XMLLINT
check-local:
- $(XMLLINT) --noout --schema $(srcdir)/xcb.xsd \
- $(srcdir)/*.xml $(srcdir)/extensions/*.xml
+ $(XMLLINT) --noout --schema $(srcdir)/xcb.xsd $(srcdir)/*.xml
endif
diff --git a/src/bigreq.xml b/src/bigreq.xml
new file mode 100644
index 0000000..9e99d2e
--- /dev/null
+++ b/src/bigreq.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2001-2004 Bart Massey, Jamey Sharp, and Josh Triplett.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+<xcb header="bigreq" extension-xname="BIG-REQUESTS"
+ extension-name="BigRequests">
+ <request name="Enable" opcode="0">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="maximum_request_length" />
+ </reply>
+ </request>
+</xcb>
diff --git a/src/composite.xml b/src/composite.xml
new file mode 100644
index 0000000..48c90fd
--- /dev/null
+++ b/src/composite.xml
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2004 Josh Triplett. All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+<!-- This file describes version 0.3 of COMPOSITE. -->
+<xcb header="composite" extension-xname="Composite" extension-name="Composite">
+ <import>xproto</import>
+ <import>xfixes</import>
+
+ <enum name="Redirect">
+ <item name="Automatic" />
+ <item name="Manual" />
+ </enum>
+
+ <request name="QueryVersion" opcode="0">
+ <field type="CARD32" name="client_major_version" />
+ <field type="CARD32" name="client_minor_version" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="major_version" />
+ <field type="CARD32" name="minor_version" />
+ <pad bytes="16" />
+ </reply>
+ </request>
+
+ <request name="RedirectWindow" opcode="1">
+ <field type="WINDOW" name="window" />
+ <field type="CARD8" name="update" />
+ <pad bytes="3" />
+ </request>
+
+ <request name="RedirectSubwindows" opcode="2">
+ <field type="WINDOW" name="window" />
+ <field type="CARD8" name="update" />
+ <pad bytes="3" />
+ </request>
+
+ <request name="UnredirectWindow" opcode="3">
+ <field type="WINDOW" name="window" />
+ <field type="CARD8" name="update" />
+ <pad bytes="3" />
+ </request>
+
+ <request name="UnredirectSubwindows" opcode="4">
+ <field type="WINDOW" name="window" />
+ <field type="CARD8" name="update" />
+ <pad bytes="3" />
+ </request>
+
+ <request name="CreateRegionFromBorderClip" opcode="5">
+ <field type="REGION" name="region" />
+ <field type="WINDOW" name="window" />
+ </request>
+
+ <request name="NameWindowPixmap" opcode="6">
+ <field type="WINDOW" name="window" />
+ <field type="PIXMAP" name="pixmap" />
+ </request>
+
+ <!-- new in version 0.3 -->
+
+ <request name="GetOverlayWindow" opcode="7">
+ <field type="WINDOW" name="window" />
+ <reply>
+ <pad bytes="1" />
+ <field type="WINDOW" name="overlay_win" />
+ <pad bytes="20" />
+ </reply>
+ </request>
+
+ <request name="ReleaseOverlayWindow" opcode="8">
+ <field type="WINDOW" name="window" />
+ </request>
+</xcb>
diff --git a/src/damage.xml b/src/damage.xml
new file mode 100644
index 0000000..474fd60
--- /dev/null
+++ b/src/damage.xml
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2004 Josh Triplett. All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+<!-- This file describes version 1 of DAMAGE. -->
+<xcb header="damage" extension-xname="DAMAGE" extension-name="Damage">
+ <import>xproto</import>
+ <import>xfixes</import>
+
+ <xidtype name="DAMAGE" />
+
+ <enum name="ReportLevel">
+ <item name="RawRectangles" />
+ <item name="DeltaRectangles" />
+ <item name="BoundingBox" />
+ <item name="NonEmpty" />
+ </enum>
+
+ <error name="BadDamage" number="0" />
+
+ <request name="QueryVersion" opcode="0">
+ <field type="CARD32" name="client_major_version" />
+ <field type="CARD32" name="client_minor_version" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="major_version" />
+ <field type="CARD32" name="minor_version" />
+ <pad bytes="16" />
+ </reply>
+ </request>
+
+ <request name="Create" opcode="1">
+ <field type="DAMAGE" name="damage" />
+ <field type="DRAWABLE" name="drawable" />
+ <field type="CARD8" name="level" /> <!-- ReportLevel -->
+ <pad bytes="3" />
+ </request>
+
+ <request name="Destroy" opcode="2">
+ <field type="DAMAGE" name="damage" />
+ </request>
+
+ <request name="Subtract" opcode="3">
+ <field type="DAMAGE" name="damage" />
+ <field type="REGION" name="repair" />
+ <field type="REGION" name="parts" />
+ </request>
+
+ <event name="Notify" number="0">
+ <field type="CARD8" name="level" /> <!-- ReportLevel -->
+ <field type="DRAWABLE" name="drawable" />
+ <field type="DAMAGE" name="damage" />
+ <field type="TIMESTAMP" name="timestamp" />
+ <field type="RECTANGLE" name="area" />
+ <field type="RECTANGLE" name="geometry" />
+ </event>
+</xcb>
diff --git a/src/dpms.xml b/src/dpms.xml
new file mode 100644
index 0000000..27ba98a
--- /dev/null
+++ b/src/dpms.xml
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2001-2004 Bart Massey, Jamey Sharp, and Josh Triplett.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+<xcb header="dpms" extension-xname="DPMS" extension-name="DPMS">
+ <request name="GetVersion" opcode="0">
+ <field type="CARD16" name="client_major_version" />
+ <field type="CARD16" name="client_minor_version" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="server_major_version" />
+ <field type="CARD16" name="server_minor_version" />
+ </reply>
+ </request>
+
+ <request name="Capable" opcode="1">
+ <reply>
+ <pad bytes="1" />
+ <field type="BOOL" name="capable" />
+ </reply>
+ </request>
+
+ <request name="GetTimeouts" opcode="2">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="standby_timeout" />
+ <field type="CARD16" name="suspend_timeout" />
+ <field type="CARD16" name="off_timeout" />
+ </reply>
+ </request>
+
+ <request name="SetTimeouts" opcode="3">
+ <field type="CARD16" name="standby_timeout" />
+ <field type="CARD16" name="suspend_timeout" />
+ <field type="CARD16" name="off_timeout" />
+ </request>
+
+ <request name="Enable" opcode="4" />
+
+ <request name="Disable" opcode="5" />
+
+ <request name="ForceLevel" opcode="6">
+ <field type="CARD16" name="power_level" />
+ </request>
+
+ <request name="Info" opcode="7">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="power_level" />
+ <field type="BOOL" name="state" />
+ </reply>
+ </request>
+</xcb>
diff --git a/src/extensions/bigreq.xml b/src/extensions/bigreq.xml
deleted file mode 100644
index 9e99d2e..0000000
--- a/src/extensions/bigreq.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2001-2004 Bart Massey, Jamey Sharp, and Josh Triplett.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-<xcb header="bigreq" extension-xname="BIG-REQUESTS"
- extension-name="BigRequests">
- <request name="Enable" opcode="0">
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="maximum_request_length" />
- </reply>
- </request>
-</xcb>
diff --git a/src/extensions/composite.xml b/src/extensions/composite.xml
deleted file mode 100644
index 48c90fd..0000000
--- a/src/extensions/composite.xml
+++ /dev/null
@@ -1,96 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2004 Josh Triplett. All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-<!-- This file describes version 0.3 of COMPOSITE. -->
-<xcb header="composite" extension-xname="Composite" extension-name="Composite">
- <import>xproto</import>
- <import>xfixes</import>
-
- <enum name="Redirect">
- <item name="Automatic" />
- <item name="Manual" />
- </enum>
-
- <request name="QueryVersion" opcode="0">
- <field type="CARD32" name="client_major_version" />
- <field type="CARD32" name="client_minor_version" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="major_version" />
- <field type="CARD32" name="minor_version" />
- <pad bytes="16" />
- </reply>
- </request>
-
- <request name="RedirectWindow" opcode="1">
- <field type="WINDOW" name="window" />
- <field type="CARD8" name="update" />
- <pad bytes="3" />
- </request>
-
- <request name="RedirectSubwindows" opcode="2">
- <field type="WINDOW" name="window" />
- <field type="CARD8" name="update" />
- <pad bytes="3" />
- </request>
-
- <request name="UnredirectWindow" opcode="3">
- <field type="WINDOW" name="window" />
- <field type="CARD8" name="update" />
- <pad bytes="3" />
- </request>
-
- <request name="UnredirectSubwindows" opcode="4">
- <field type="WINDOW" name="window" />
- <field type="CARD8" name="update" />
- <pad bytes="3" />
- </request>
-
- <request name="CreateRegionFromBorderClip" opcode="5">
- <field type="REGION" name="region" />
- <field type="WINDOW" name="window" />
- </request>
-
- <request name="NameWindowPixmap" opcode="6">
- <field type="WINDOW" name="window" />
- <field type="PIXMAP" name="pixmap" />
- </request>
-
- <!-- new in version 0.3 -->
-
- <request name="GetOverlayWindow" opcode="7">
- <field type="WINDOW" name="window" />
- <reply>
- <pad bytes="1" />
- <field type="WINDOW" name="overlay_win" />
- <pad bytes="20" />
- </reply>
- </request>
-
- <request name="ReleaseOverlayWindow" opcode="8">
- <field type="WINDOW" name="window" />
- </request>
-</xcb>
diff --git a/src/extensions/damage.xml b/src/extensions/damage.xml
deleted file mode 100644
index 474fd60..0000000
--- a/src/extensions/damage.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2004 Josh Triplett. All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-<!-- This file describes version 1 of DAMAGE. -->
-<xcb header="damage" extension-xname="DAMAGE" extension-name="Damage">
- <import>xproto</import>
- <import>xfixes</import>
-
- <xidtype name="DAMAGE" />
-
- <enum name="ReportLevel">
- <item name="RawRectangles" />
- <item name="DeltaRectangles" />
- <item name="BoundingBox" />
- <item name="NonEmpty" />
- </enum>
-
- <error name="BadDamage" number="0" />
-
- <request name="QueryVersion" opcode="0">
- <field type="CARD32" name="client_major_version" />
- <field type="CARD32" name="client_minor_version" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="major_version" />
- <field type="CARD32" name="minor_version" />
- <pad bytes="16" />
- </reply>
- </request>
-
- <request name="Create" opcode="1">
- <field type="DAMAGE" name="damage" />
- <field type="DRAWABLE" name="drawable" />
- <field type="CARD8" name="level" /> <!-- ReportLevel -->
- <pad bytes="3" />
- </request>
-
- <request name="Destroy" opcode="2">
- <field type="DAMAGE" name="damage" />
- </request>
-
- <request name="Subtract" opcode="3">
- <field type="DAMAGE" name="damage" />
- <field type="REGION" name="repair" />
- <field type="REGION" name="parts" />
- </request>
-
- <event name="Notify" number="0">
- <field type="CARD8" name="level" /> <!-- ReportLevel -->
- <field type="DRAWABLE" name="drawable" />
- <field type="DAMAGE" name="damage" />
- <field type="TIMESTAMP" name="timestamp" />
- <field type="RECTANGLE" name="area" />
- <field type="RECTANGLE" name="geometry" />
- </event>
-</xcb>
diff --git a/src/extensions/dpms.xml b/src/extensions/dpms.xml
deleted file mode 100644
index 27ba98a..0000000
--- a/src/extensions/dpms.xml
+++ /dev/null
@@ -1,76 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2001-2004 Bart Massey, Jamey Sharp, and Josh Triplett.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-<xcb header="dpms" extension-xname="DPMS" extension-name="DPMS">
- <request name="GetVersion" opcode="0">
- <field type="CARD16" name="client_major_version" />
- <field type="CARD16" name="client_minor_version" />
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="server_major_version" />
- <field type="CARD16" name="server_minor_version" />
- </reply>
- </request>
-
- <request name="Capable" opcode="1">
- <reply>
- <pad bytes="1" />
- <field type="BOOL" name="capable" />
- </reply>
- </request>
-
- <request name="GetTimeouts" opcode="2">
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="standby_timeout" />
- <field type="CARD16" name="suspend_timeout" />
- <field type="CARD16" name="off_timeout" />
- </reply>
- </request>
-
- <request name="SetTimeouts" opcode="3">
- <field type="CARD16" name="standby_timeout" />
- <field type="CARD16" name="suspend_timeout" />
- <field type="CARD16" name="off_timeout" />
- </request>
-
- <request name="Enable" opcode="4" />
-
- <request name="Disable" opcode="5" />
-
- <request name="ForceLevel" opcode="6">
- <field type="CARD16" name="power_level" />
- </request>
-
- <request name="Info" opcode="7">
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="power_level" />
- <field type="BOOL" name="state" />
- </reply>
- </request>
-</xcb>
diff --git a/src/extensions/glx.xml b/src/extensions/glx.xml
deleted file mode 100644
index 5f8b5e6..0000000
--- a/src/extensions/glx.xml
+++ /dev/null
@@ -1,1466 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2005 Jeremy Kolb.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person ob/Sintaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-
-<!--
-Note that on X.org servers before 6.9 (and probably others as well) the length
-field in the reply is computed incorrectly for GetFBConfigs and
-VendorPrivateWithReply vendor_code 0x10004 (GetFBConfigsSGIX). For these
-requests the reply structure begins:
- <pad bytes="1" />
- <field type="CARD32" name="numVisuals" />
- <field type="CARD32" name="numProps" />
-The correct value for the length field is
- numVisuals * numProps * 2
-but on broken servers the "* 2" was missing. A workaround that is correct for
-all implementations is to rewrite the length field on receipt on the client
-side, using the expression above.
-
-The patch that fixed this server bug in X.org CVS is here:
- http://cvs.freedesktop.org/xorg/xserver/xorg/GL/glx/glxcmds.c?r1=1.6&r2=1.7
--->
-
-<xcb header="glx" extension-xname="GLX" extension-name="Glx">
- <!-- target support: 1.3 -->
-
- <import>xproto</import>
-
- <xidtype name="PIXMAP" />
- <xidtype name="CONTEXT" />
- <xidtype name="PBUFFER" />
- <xidtype name="WINDOW" />
- <xidtype name="FBCONFIG" />
-
- <xidunion name="DRAWABLE">
- <type>xproto:WINDOW</type>
- <type>PBUFFER</type>
- <type>glx:PIXMAP</type>
- <type>glx:WINDOW</type>
- </xidunion>
-
- <typedef oldname="float" newname="FLOAT32" />
- <typedef oldname="double" newname="FLOAT64" />
- <typedef oldname="CARD32" newname="BOOL32" />
- <typedef oldname="CARD32" newname="CONTEXT_TAG" />
-
- <!-- Errors -->
- <error name="Generic" number="-1"> <!-- FIXME: fake number -->
- <field type="CARD32" name="bad_value" />
- <field type="CARD16" name="minor_opcode" />
- <field type="CARD8" name="major_opcode" />
- <pad bytes="21" />
- </error>
-
- <errorcopy name="BadContext" number="0" ref="Generic" />
- <errorcopy name="BadContextState" number="1" ref="Generic" />
- <errorcopy name="BadDrawable" number="2" ref="Generic" />
- <errorcopy name="BadPixmap" number="3" ref="Generic" />
- <errorcopy name="BadContextTag" number="4" ref="Generic" />
- <errorcopy name="BadCurrentWindow" number="5" ref="Generic" />
- <errorcopy name="BadRenderRequest" number="6" ref="Generic" />
- <errorcopy name="BadLargeRequest" number="7" ref="Generic" />
- <errorcopy name="UnsupportedPrivateRequest" number="8" ref="Generic" />
- <errorcopy name="BadFBConfig" number="9" ref="Generic" />
- <errorcopy name="BadPbuffer" number="10" ref="Generic" />
- <errorcopy name="BadCurrentDrawable" number="11" ref="Generic" />
- <errorcopy name="BadWindow" number="12" ref="Generic" />
-
- <!-- Events -->
- <event name="PbufferClobber" number="0">
- <field type="CARD16" name="event_type" />
- <field type="CARD16" name="draw_type" />
- <field type="glx:DRAWABLE" name="drawable" />
- <field type="CARD32" name="b_mask" />
- <field type="CARD16" name="aux_buffer" />
- <field type="CARD16" name="x" />
- <field type="CARD16" name="y" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="CARD16" name="count" />
- <pad bytes="4" />
- </event>
-
- <!-- enums for PbufferClobber event/draw type -->
- <enum name="PBCET">
- <item name="Damaged">
- <value>0x8017</value>
- </item>
- <item name="Saved">
- <value>0x8018</value>
- </item>
- </enum>
-
- <enum name="PBCDT">
- <item name="Window">
- <value>0x8019</value>
- </item>
- <item name="Pbuffer">
- <value>0x801A</value>
- </item>
- </enum>
-
- <!-- Requests -->
- <request name="Render" opcode="1" combine-adjacent="true">
- <field type="CONTEXT_TAG" name="context_tag" />
- <list type="BYTE" name="data" />
- </request>
-
- <request name="RenderLarge" opcode="2">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD16" name="request_num" />
- <field type="CARD16" name="request_total" />
- <field type="CARD32" name="data_len" />
- <list type="BYTE" name="data">
- <fieldref>data_len</fieldref>
- </list>
- </request>
-
- <request name="CreateContext" opcode="3">
- <field type="glx:CONTEXT" name="context" />
- <field type="VISUALID" name="visual" />
- <field type="CARD32" name="screen" />
- <field type="glx:CONTEXT" name="share_list" />
- <field type="BOOL" name="is_direct" />
- <pad bytes="3" />
- </request>
-
- <request name="DestroyContext" opcode="4">
- <field type="glx:CONTEXT" name="context" />
- </request>
-
- <request name="MakeCurrent" opcode="5">
- <field type="glx:DRAWABLE" name="drawable" />
- <field type="glx:CONTEXT" name="context" />
- <field type="CONTEXT_TAG" name="old_context_tag" />
- <reply>
- <pad bytes="1" />
- <field type="CONTEXT_TAG" name="context_tag" />
- <pad bytes="20" />
- </reply>
- </request>
-
- <request name="IsDirect" opcode="6">
- <field type="glx:CONTEXT" name="context" />
- <reply>
- <pad bytes="1" />
- <field type="BOOL" name="is_direct" />
- <pad bytes="23" />
- </reply>
- </request>
-
- <request name="QueryVersion" opcode="7">
- <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" />
- <pad bytes="16" />
- </reply>
- </request>
-
- <request name="WaitGL" opcode="8">
- <field type="CONTEXT_TAG" name="context_tag" />
- </request>
-
- <request name="WaitX" opcode="9">
- <field type="CONTEXT_TAG" name="context_tag" />
- </request>
-
- <request name="CopyContext" opcode="10">
- <field type="glx:CONTEXT" name="src" />
- <field type="glx:CONTEXT" name="dest" />
- <field type="CARD32" name="mask" />
- <field type="CONTEXT_TAG" name="src_context_tag" />
- </request>
-
- <!-- Enum for CopyContext: mask -->
- <enum name="GC">
- <item name="GL_CURRENT_BIT"><value>0x00000001</value></item>
- <item name="GL_POINT_BIT"><value>0x00000002</value></item>
- <item name="GL_LINE_BIT"><value>0x00000004</value></item>
- <item name="GL_POLYGON_BIT"><value>0x00000008</value></item>
- <item name="GL_POLYGON_STIPPLE_BIT"><value>0x00000010</value></item>
- <item name="GL_PIXEL_MODE_BIT"><value>0x00000020</value></item>
- <item name="GL_LIGHTING_BIT"><value>0x00000040</value></item>
- <item name="GL_FOG_BIT"><value>0x00000080</value></item>
- <item name="GL_DEPTH_BUFFER_BIT"><value>0x00000100</value></item>
- <item name="GL_ACCUM_BUFFER_BIT"><value>0x00000200</value></item>
- <item name="GL_STENCIL_BUFFER_BIT"><value>0x00000400</value></item>
- <item name="GL_VIEWPORT_BIT"><value>0x00000800</value></item>
- <item name="GL_TRANSFORM_BIT"><value>0x00001000</value></item>
- <item name="GL_ENABLE_BIT"><value>0x00002000</value></item>
- <item name="GL_COLOR_BUFFER_BIT"><value>0x00004000</value></item>
- <item name="GL_HINT_BIT"><value>0x00008000</value></item>
- <item name="GL_EVAL_BIT"><value>0x00010000</value></item>
- <item name="GL_LIST_BIT"><value>0x00020000</value></item>
- <item name="GL_TEXTURE_BIT"><value>0x00040000</value></item>
- <item name="GL_SCISSOR_BIT"><value>0x00080000</value></item>
- <item name="GL_ALL_ATTRIB_BITS"><value>0x000ffffff</value></item>
- </enum>
-
- <request name="SwapBuffers" opcode="11">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="glx:DRAWABLE" name="drawable" />
- </request>
-
- <request name="UseXFont" opcode="12">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="FONT" name="font" />
- <field type="CARD32" name="first" />
- <field type="CARD32" name="count" />
- <field type="CARD32" name="list_base" />
- </request>
-
- <request name="CreateGLXPixmap" opcode="13">
- <field type="CARD32" name="screen" />
- <field type="VISUALID" name="visual" />
- <field type="xproto:PIXMAP" name="pixmap" />
- <field type="glx:PIXMAP" name="glx_pixmap" />
- </request>
-
-
- <request name="GetVisualConfigs" opcode="14">
- <field type="CARD32" name="screen" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num_visuals" />
- <field type="CARD32" name="num_properties" />
- <pad bytes="16" />
- <list type="CARD32" name="property_list" />
- </reply>
- </request>
-
- <request name="DestroyGLXPixmap" opcode="15">
- <field type="glx:PIXMAP" name="glx_pixmap" />
- </request>
-
- <!--
- Context tag is not in the proto, should be part of the list of bytes
- but every VendorPrivate and VendorPrivateWithReply request uses them
- so it is safe to put them in. That's how Mesa does it.
- -->
- <request name="VendorPrivate" opcode="16">
- <field type="CARD32" name="vendor_code" />
- <field type="CONTEXT_TAG" name="context_tag" />
- <list type="BYTE" name="data" />
- </request>
-
- <request name="VendorPrivateWithReply" opcode="17">
- <field type="CARD32" name="vendor_code" />
- <field type="CONTEXT_TAG" name="context_tag" />
- <list type="BYTE" name="data" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="retval" />
- <list type="BYTE" name="data1">
- <value>24</value>
- </list>
- <list type="BYTE" name="data2" />
- </reply>
- </request>
-
- <request name="QueryExtensionsString" opcode="18">
- <field type="CARD32" name="screen" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <pad bytes="16" />
- </reply>
- </request>
-
- <request name="QueryServerString" opcode="19">
- <field type="CARD32" name="screen" />
- <field type="CARD32" name="name" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="str_len" />
- <pad bytes="16" />
- <list type="CARD8" name="string">
- <fieldref>str_len</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="ClientInfo" opcode="20">
- <field type="CARD32" name="major_version" />
- <field type="CARD32" name="minor_version" />
- <field type="CARD32" name="str_len" />
- <list type="CARD8" name="string">
- <fieldref>str_len</fieldref>
- </list>
- </request>
-
- <!-- Start of GLX 1.3 Requests -->
-
- <request name="GetFBConfigs" opcode="21">
- <field type="CARD32" name="screen" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num_FB_configs" />
- <field type="CARD32" name="num_properties" />
- <pad bytes="16" />
- <!--
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
- -->
- <list type="CARD32" name="property_list" />
- </reply>
- </request>
-
- <request name="CreatePixmap" opcode="22">
- <field type="CARD32" name="screen" />
- <field type="CARD32" name="fbconfig" />
- <field type="xproto:PIXMAP" name="pixmap" />
- <field type="glx:PIXMAP" name="glx_pixmap" />
- <field type="CARD32" name="num_attribs" />
- </request>
-
- <request name="DestroyPixmap" opcode="23">
- <field type="glx:PIXMAP" name="glx_pixmap" />
- </request>
-
- <request name="CreateNewContext" opcode="24">
- <field type="glx:CONTEXT" name="context" />
- <field type="CARD32" name="fbconfig" />
- <field type="SCREEN" name="screen" />
- <field type="CARD32" name="render_type" />
- <field type="CARD32" name="share_list" />
- <field type="BOOL" name="is_direct" />
- <field type="CARD8" name="reserved1" />
- <field type="CARD16" name="reserved2" />
- </request>
-
- <request name="QueryContext" opcode="25">
- <field type="glx:CONTEXT" name="context" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num_attributes"/>
- <pad bytes="20" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
- </reply>
- </request>
-
- <request name="MakeContextCurrent" opcode="26">
- <field type="CONTEXT_TAG" name="old_context_tag" />
- <field type="glx:DRAWABLE" name="drawable" />
- <field type="glx:DRAWABLE" name="read_drawable" />
- <field type="glx:CONTEXT" name="context" />
- <reply>
- <pad bytes="1" />
- <field type="CONTEXT_TAG" name="context_tag" />
- <pad bytes="20" />
- </reply>
- </request>
-
- <request name="CreatePbuffer" opcode="27">
- <field type="SCREEN" name="screen" />
- <field type="FBCONFIG" name="fbconfig" />
- <field type="PBUFFER" name="pbuffer" />
- <field type="CARD32" name="num_attribs" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
- </request>
-
- <request name="DestroyPbuffer" opcode="28">
- <field type="PBUFFER" name="pbuffer" />
- </request>
-
- <request name="GetDrawableAttributes" opcode="29">
- <field type="glx:DRAWABLE" name="drawable" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num_attribs" />
- <pad bytes="20" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
- </reply>
- </request>
-
- <request name="ChangeDrawableAttributes" opcode="30">
- <field type="glx:DRAWABLE" name="drawable" />
- <field type="CARD32" name="num_attribs" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
- </request>
-
- <request name="CreateWindow" opcode="31">
- <field type="SCREEN" name="screen" />
- <field type="FBCONFIG" name="fbconfig" />
- <field type="xproto:WINDOW" name="window" />
- <field type="glx:WINDOW" name="glx_window" />
- <field type="CARD32" name="num_attribs" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
- </request>
-
- <request name="DeleteWindow" opcode="32">
- <field type="glx:WINDOW" name="glxwindow" />
- </request>
-
- <!-- Requests for GL Non-rendering Commands (single ops) -->
-
- <request name="NewList" opcode="101">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="list" />
- <field type="CARD32" name="mode" />
- </request>
-
- <request name="EndList" opcode="102">
- <field type="CONTEXT_TAG" name="context_tag" />
- </request>
-
- <request name="DeleteLists" opcode="103">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="list" />
- <field type="INT32" name="range" />
- </request>
-
- <request name="GenLists" opcode="104">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="INT32" name="range" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="ret_val" />
- </reply>
- </request>
-
- <request name="FeedbackBuffer" opcode="105">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="INT32" name="size" />
- <field type="INT32" name="type" />
- </request>
-
- <request name="SelectBuffer" opcode="106">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="INT32" name="size" />
- <!-- the reply is actually returned in the data
- of the next RenderMode request -->
- </request>
-
-
- <request name="RenderMode" opcode="107">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="mode" />
- <!--
- This reply is only if RM was previously feedback/selection.
- If it was in feedback mode then data is FLOAT32.
- If previously in render mode there is no reply.
- -->
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="ret_val" />
- <field type="CARD32" name="n" />
- <field type="CARD32" name="new_mode" />
- <pad bytes="12" />
- <list type="CARD32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <enum name="RM">
- <item name="GL_RENDER"><value>0x1C00</value></item>
- <item name="GL_FEEDBACK"><value>0x1C01</value></item>
- <item name="GL_SELECT"><value>0x1C02</value></item>
- </enum>
-
- <request name="Finish" opcode="108">
- <field type="CONTEXT_TAG" name="context_tag" />
- <reply>
- <pad bytes="1" />
- </reply>
- </request>
-
- <request name="PixelStoref" opcode="109">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="pname" />
- <field type="FLOAT32" name="datum" />
- </request>
-
- <request name="PixelStorei" opcode="110">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="pname" />
- <field type="INT32" name="datum" />
- </request>
-
- <request name="ReadPixels" opcode="111">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="INT32" name="x" />
- <field type="INT32" name="y" />
- <field type="INT32" name="width" />
- <field type="INT32" name="height" />
- <field type="CARD32" name="format" />
- <field type="CARD32" name="type" />
- <field type="BOOL" name="swap_bytes" />
- <field type="BOOL" name="lsb_first" />
- <reply>
- <pad bytes="1" />
- <pad bytes="24" />
- <list type="BYTE" name="data" />
- </reply>
- </request>
-
- <!-- FIXME:
- All the Get* functions can return different stuff for replies.
- Hopefully xcb will support multiple reply structures at some point
- but for now... grrrr
- Starts on page 58/180
- -->
- <request name="GetBooleanv" opcode="112">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="INT32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="BOOL" name="datum" />
- <pad bytes="15" />
- <list type="BOOL" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetClipPlane" opcode="113">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="INT32" name="plane" />
- <reply>
- <pad bytes="1" />
- <pad bytes="24" />
- <list type="FLOAT64" name="data" />
- </reply>
- </request>
-
- <request name="GetDoublev" opcode="114">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT64" name="datum" />
- <pad bytes="8" />
- <list type="FLOAT64" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetError" opcode="115">
- <field type="CONTEXT_TAG" name="context_tag" />
- <reply>
- <pad bytes="1" />
- <field type="INT32" name="error" />
- </reply>
- </request>
-
- <request name="GetFloatv" opcode="116">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetIntegerv" opcode="117">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetLightfv" opcode="118">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="light" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetLightiv" opcode="119">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="light" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetMapdv" opcode="120">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="query" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT64" name="datum" />
- <pad bytes="8" />
- <list type="FLOAT64" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetMapfv" opcode="121">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="query" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetMapiv" opcode="122">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="query" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetMaterialfv" opcode="123">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="face" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetMaterialiv" opcode="124">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="face" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetPixelMapfv" opcode="125">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="map" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetPixelMapuiv" opcode="126">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="map" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="CARD32" name="datum" />
- <pad bytes="12" />
- <list type="CARD32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetPixelMapusv" opcode="127">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="map" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="CARD16" name="datum" />
- <pad bytes="16" />
- <list type="CARD16" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetPolygonStipple" opcode="128">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="BOOL" name="lsb_first" />
- <reply>
- <pad bytes="1" />
- <pad bytes="24" />
- <list type="BYTE" name="data" />
- </reply>
- </request>
-
-
- <request name="GetString" opcode="129">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="name" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <pad bytes="16" />
- <list type="CARD8" name="string">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetTexEnvfv" opcode="130">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetTexEnviv" opcode="131">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetTexGendv" opcode="132">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="coord" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT64" name="datum" />
- <pad bytes="8" />
- <list type="FLOAT64" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetTexGenfv" opcode="133">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="coord" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetTexGeniv" opcode="134">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="coord" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetTexImage" opcode="135">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="INT32" name="level" />
- <field type="CARD32" name="format" />
- <field type="CARD32" name="type" />
- <field type="BOOL" name="swap_bytes" />
- <reply>
- <pad bytes="1" />
- <pad bytes="8" />
- <field type="INT32" name="width" />
- <field type="INT32" name="height" />
- <field type="INT32" name="depth" />
- <pad bytes="4" />
- <list type="BYTE" name="data" />
- </reply>
- </request>
-
-
- <request name="GetTexParameterfv" opcode="136">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetTexParameteriv" opcode="137">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetTexLevelParameterfv" opcode="138">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="INT32" name="level" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetTexLevelParameteriv" opcode="139">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="INT32" name="level" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="IsList" opcode="141" >
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="list" />
- <reply>
- <pad bytes="1" />
- <field type="BOOL32" name="ret_val" />
- </reply>
- </request>
-
- <request name="Flush" opcode="142">
- <field type="CONTEXT_TAG" name="context_tag" />
- </request>
-
- <request name="AreTexturesResident" opcode="143">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="INT32" name="n" />
- <list type="CARD32" name="textures">
- <fieldref>n</fieldref>
- </list>
- <reply>
- <pad bytes="1" />
- <field type="BOOL32" name="ret_val" />
- <pad bytes="20" />
- <list type="BOOL" name="data" />
- </reply>
- </request>
-
- <request name="DeleteTextures" opcode="144">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="INT32" name="n" />
- <list type="CARD32" name="textures">
- <fieldref>n</fieldref>
- </list>
- </request>
-
- <request name="GenTextures" opcode="145">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="INT32" name="n" />
- <reply>
- <pad bytes="1" />
- <pad bytes="24" />
- <list type="CARD32" name="data" />
- </reply>
- </request>
-
- <request name="IsTexture" opcode="146">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="texture" />
- <reply>
- <pad bytes="1" />
- <field type="BOOL32" name="ret_val" />
- </reply>
- </request>
-
- <request name="GetColorTable" opcode="147">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="format" />
- <field type="CARD32" name="type" />
- <field type="BOOL" name="swap_bytes" />
- <reply>
- <pad bytes="1" />
- <pad bytes="8" />
- <field type="INT32" name="width" />
- <pad bytes="12" />
- <list type="BYTE" name="data" />
- </reply>
- </request>
-
- <request name="GetColorTableParameterfv" opcode="148">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetColorTableParameteriv" opcode="149">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetConvolutionFilter" opcode="150">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="format" />
- <field type="CARD32" name="type" />
- <field type="BOOL" name="swap_bytes" />
- <reply>
- <pad bytes="1" />
- <pad bytes="8" />
- <field type="INT32" name="width" />
- <field type="INT32" name="height" />
- <pad bytes="8" />
- <list type="BYTE" name="data" />
- </reply>
- </request>
-
-
- <request name="GetConvolutionParameterfv" opcode="151">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetConvolutionParameteriv" opcode="152">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetSeparableFilter" opcode="153">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="format" />
- <field type="CARD32" name="type" />
- <field type="BOOL" name="swap_bytes" />
- <reply>
- <pad bytes="1" />
- <pad bytes="8" />
- <field type="INT32" name="row_w" />
- <field type="INT32" name="col_h" />
- <pad bytes="8" />
- <list type="BYTE" name="rows_and_cols" />
- </reply>
- </request>
-
- <request name="GetHistogram" opcode="154">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="format" />
- <field type="CARD32" name="type" />
- <field type="BOOL" name="swap_bytes" />
- <field type="BOOL" name="reset" />
- <reply>
- <pad bytes="1" />
- <pad bytes="8" />
- <field type="INT32" name="width" />
- <pad bytes="12" />
- <list type="BYTE" name="data" />
- </reply>
- </request>
-
-
- <request name="GetHistogramParameterfv" opcode="155">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetHistogramParameteriv" opcode="156">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetMinmax" opcode="157">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="format" />
- <field type="CARD32" name="type" />
- <field type="BOOL" name="swap_bytes" />
- <field type="BOOL" name="reset" />
- <reply>
- <pad bytes="1" />
- <pad bytes="24" />
- <list type="BYTE" name="data" />
- </reply>
- </request>
-
- <request name="GetMinmaxParameterfv" opcode="158">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="FLOAT32" name="datum" />
- <pad bytes="12" />
- <list type="FLOAT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetMinmaxParameteriv" opcode="159">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <!--
- GLX Extensions
-
- * XXX: So far only define non-rendering commands.
- * Only those extensions that affect the GLX wire protocol are listed.
- -->
-
- <!--
- GL_ARB_texture_compression
- http://oss.sgi.com/projects/ogl-sample/registry/ARB/texture_compression.txt
- -->
- <request name="GetCompressedTexImageARB" opcode="160">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="INT32" name="level" />
- <reply>
- <pad bytes="1" />
- <pad bytes="8" />
- <field type="INT32" name="size" />
- <pad bytes="12" />
- <list type="BYTE" name="data" />
- </reply>
- </request>
-
-
- <!--
- GL_ARB_occlusion_query
- http://oss.sgi.com/projects/ogl-sample/registry/ARB/occlusion_query.txt
- -->
-
- <request name="DeleteQueriesARB" opcode="161">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="INT32" name="n" />
- <list type="CARD32" name="ids">
- <fieldref>n</fieldref>
- </list>
- </request>
-
- <request name="GenQueriesARB" opcode="162">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="INT32" name="n" />
- <reply>
- <pad bytes="1" />
- <pad bytes="24" />
- <list type="CARD32" name="data" />
- </reply>
- </request>
-
- <request name="IsQueryARB" opcode="163">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="id" />
- <reply>
- <pad bytes="1" />
- <field type="BOOL32" name="ret_val" />
- </reply>
- </request>
-
- <request name="GetQueryivARB" opcode="164">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="target" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetQueryObjectivARB" opcode="165">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="id" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="INT32" name="datum" />
- <pad bytes="12" />
- <list type="INT32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetQueryObjectuivARB" opcode="166">
- <field type="CONTEXT_TAG" name="context_tag" />
- <field type="CARD32" name="id" />
- <field type="CARD32" name="pname" />
- <reply>
- <pad bytes="1" />
- <pad bytes="4" />
- <field type="CARD32" name="n" />
- <field type="CARD32" name="datum" />
- <pad bytes="12" />
- <list type="CARD32" name="data">
- <fieldref>n</fieldref>
- </list>
- </reply>
- </request>
-
- <!--
- GL_ARB_vertex_program
- http://oss.sgi.com/projects/ogl-sample/registry/ARB/vertex_program.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_ARB_fragment_program
- http://oss.sgi.com/projects/ogl-sample/registry/ARB/fragment_program.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_SGIS_texture_filter4
- http://oss.sgi.com/projects/ogl-sample/registry/SGIS/texture_filter4.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_EXT_histogram
- http://oss.sgi.com/projects/ogl-sample/registry/EXT/histogram.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_EXT_convolution
- http://oss.sgi.com/projects/ogl-sample/registry/EXT/convolution.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_SGI_color_table
- http://oss.sgi.com/projects/ogl-sample/registry/SGI/color_table.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_EXT_texture_object
- http://oss.sgi.com/projects/ogl-sample/registry/EXT/texture_object.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_SGIS_detail_texture
- http://oss.sgi.com/projects/ogl-sample/registry/SGIS/detail_texture.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_SGIS_sharpen_texture
- http://oss.sgi.com/projects/ogl-sample/registry/SGIS/sharpen_texture.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_SGI_make_current_read
- http://oss.sgi.com/projects/ogl-sample/registry/SGI/make_current_read.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_EXT_import_context
- http://oss.sgi.com/projects/ogl-sample/registry/EXT/import_context.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_SGIX_fbconfig
- http://oss.sgi.com/projects/ogl-sample/registry/SGIX/fbconfig.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_SGIX_pbuffer
- http://oss.sgi.com/projects/ogl-sample/registry/SGIX/pbuffer.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_EXT_pixel_transform
- http://oss.sgi.com/projects/ogl-sample/registry/EXT/pixel_transform.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_NV_register_combiners
- http://oss.sgi.com/projects/ogl-sample/registry/NV/register_combiners.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_NV_fence
- http://oss.sgi.com/projects/ogl-sample/registry/NV/fence.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_NV_register_combiners2
- http://oss.sgi.com/projects/ogl-sample/registry/NV/register_combiners2.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_NV_vertex_program
- http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_program.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_NV_vertex_program
- http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_program.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_NV_occlusion_query
- http://oss.sgi.com/projects/ogl-sample/registry/NV/occlusion_query.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_NV_fragment_program
- http://oss.sgi.com/projects/ogl-sample/registry/NV/fragment_program.txt
- XXX: Need to write up vops
- -->
-
- <!--
- GL_OES_single_precision
- http://oss.sgi.com/projects/ogl-sample/registry/OES/single_precision.txt
- XXX: Need to write up vops
- -->
-
-</xcb>
diff --git a/src/extensions/randr.xml b/src/extensions/randr.xml
deleted file mode 100644
index 5c0ccdf..0000000
--- a/src/extensions/randr.xml
+++ /dev/null
@@ -1,149 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2005 Jeremy Kolb.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-
-<xcb header="randr" extension-xname="RANDR" extension-name="RandR">
- <!-- Implements version 1.1 of RANDR -->
-
- <import>xproto</import>
-
- <enum name="Rotation">
- <item name="Rotate_0"><value>1</value></item>
- <item name="Rotate_90"><value>2</value></item>
- <item name="Rotate_180"><value>4</value></item>
- <item name="Rotate_270"><value>8</value></item>
- <item name="Reflect_X"><value>16</value></item>
- <item name="Reflect_Y"><value>32</value></item>
- </enum>
-
- <struct name="ScreenSize">
- <field type="INT16" name="width" />
- <field type="INT16" name="height" />
- <field type="INT16" name="mwidth" />
- <field type="INT16" name="mheight" />
- </struct>
-
- <struct name="RefreshRates">
- <field type="CARD16" name="nRates" />
- <list type="CARD16" name="rates">
- <fieldref>nRates</fieldref>
- </list>
- </struct>
-
- <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" />
- <pad bytes="16" />
- </reply>
- </request>
-
- <!-- This is for the 1.1 version request. I don't believe we need to specify a 1.0 request
- as few things used randr 1.0. The only difference is the removal of refresh and padding I think.
- BEWARE: the docs lie!
- -->
- <request name="SetScreenConfig" opcode="2">
- <field type="WINDOW" name="drawable" />
- <field type="CARD32" name="timestamp" />
- <field type="CARD32" name="config_timestamp" />
- <field type="CARD16" name="sizeID" />
- <field type="INT16" name="rotation" />
- <field type="CARD16" name="refresh" />
- <pad bytes="2" />
- <reply>
- <field type="CARD8" name="status" />
- <field type="CARD32" name="timestamp" />
- <field type="CARD32" name="config_timestamp" />
- <field type="WINDOW" name="root" />
- <field type="CARD16" name="subpixel_order" />
- <pad bytes="10" />
- </reply>
- </request>
-
- <enum name="SetConfig">
- <item name="Success"><value>0</value></item>
- <item name="InvalidConfigTime"><value>1</value></item>
- <item name="InvalidTime"><value>2</value></item>
- <item name="Failed"><value>3</value></item>
- </enum>
-
- <request name="SelectInput" opcode="4">
- <field type="WINDOW" name="window" />
- <field type="CARD16" name="enable" />
- <pad bytes="2" />
- </request>
-
- <!--
- I think this is correct. It works. though I believe nInfo is a bit high...
- -->
- <request name="GetScreenInfo" opcode="5">
- <field type="WINDOW" name="window" />
- <reply>
- <field type="CARD8" name="rotations" />
- <field type="WINDOW" name="root" />
- <field type="CARD32" name="timestamp" />
- <field type="CARD32" name="config_timestamp" />
- <field type="CARD16" name="nSizes" />
- <field type="CARD16" name="sizeID" />
- <field type="INT16" name="rotation" />
- <field type="CARD16" name="rate" />
- <field type="CARD16" name="nInfo" />
- <pad bytes="2" />
- <list type="ScreenSize" name="sizes">
- <fieldref>nSizes</fieldref>
- </list>
- <list type="RefreshRates" name="rates">
- <op op="-">
- <fieldref>nInfo</fieldref>
- <fieldref>nSizes</fieldref>
- </op>
- </list>
- </reply>
- </request>
-
- <enum name="SM" >
- <item name="ScreenChangeNotify"><value>1</value></item>
- </enum>
-
- <event name="ScreenChangeNotify" number="0">
- <field type="CARD8" name="rotation" />
- <field type="CARD32" name="timestamp" />
- <field type="CARD32" name="config_timestamp" />
- <field type="WINDOW" name="root" />
- <field type="WINDOW" name="request_window" />
- <field type="CARD16" name="sizeID" />
- <field type="CARD16" name="subpixel_order" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="CARD16" name="mwidth" />
- <field type="CARD16" name="mheight" />
- </event>
-
-</xcb>
diff --git a/src/extensions/record.xml b/src/extensions/record.xml
deleted file mode 100644
index 09729ad..0000000
--- a/src/extensions/record.xml
+++ /dev/null
@@ -1,172 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2005 Jeremy Kolb.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person ob/Sintaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-
-<xcb header="record" extension-xname="RECORD" extension-name="Record">
-
- <!-- Types -->
- <xidtype name="CONTEXT" />
-
- <struct name="Range8">
- <field type="CARD8" name="first" />
- <field type="CARD8" name="last" />
- </struct>
-
- <struct name="Range16">
- <field type="CARD16" name="first" />
- <field type="CARD16" name="last" />
- </struct>
-
- <struct name="ExtRange">
- <field type="Range8" name="major" />
- <field type="Range16" name="minor" />
- </struct>
-
- <struct name="Range">
- <field type="Range8" name="core_requests" />
- <field type="Range8" name="core_replies" />
- <field type="ExtRange" name="ext_requests" />
- <field type="ExtRange" name="ext_replies" />
- <field type="Range8" name="delivered_events" />
- <field type="Range8" name="device_events" />
- <field type="Range8" name="errors" />
- <field type="BOOL" name="client_started" />
- <field type="BOOL" name="client_died" />
- </struct>
-
- <typedef oldname="CARD8" newname="ElementHeader" />
- <enum name="HType">
- <item name="FromServerTime"><value>0x01</value></item>
- <item name="FromClientTime"><value>0x02</value></item>
- <item name="FromClientSequence"><value>0x04</value></item>
- </enum>
-
- <typedef oldname="CARD32" newname="ClientSpec" />
- <enum name="CS">
- <item name="CurrentClients"><value>1</value></item>
- <item name="FutureClients"><value>2</value></item>
- <item name="AllClients"><value>3</value></item>
- </enum>
-
- <struct name="ClientInfo">
- <field type="ClientSpec" name="client_resource" />
- <field type="CARD32" name="num_ranges" />
- <list type="Range" name="ranges">
- <fieldref>num_ranges</fieldref>
- </list>
- </struct>
-
- <!-- Errors -->
- <error name="BadContext" number="0">
- <field type="CARD32" name="invalid_record" />
- </error>
-
- <!-- Requests -->
- <request name="QueryVersion" opcode="0">
- <field type="CARD16" name="major_version" />
- <field type="CARD16" name="minor_version" />
- <reply>
- <pad bytes="1"/>
- <field type="CARD16" name="major_version" />
- <field type="CARD16" name="minor_version" />
- </reply>
- </request>
-
- <request name="CreateContext" opcode="1">
- <field type="record:CONTEXT" name="context" />
- <field type="ElementHeader" name="element_header" />
- <pad bytes="3" />
- <field type="CARD32" name="num_client_specs" />
- <field type="CARD32" name="num_ranges" />
- <list type="ClientSpec" name="client_specs">
- <fieldref>num_client_specs</fieldref>
- </list>
- <list type="Range" name="ranges">
- <fieldref>num_ranges</fieldref>
- </list>
- </request>
-
- <request name="RegisterClients" opcode="2">
- <field type="record:CONTEXT" name="context" />
- <field type="ElementHeader" name="element_header" />
- <pad bytes="3" />
- <field type="CARD32" name="num_client_specs" />
- <field type="CARD32" name="num_ranges" />
- <list type="ClientSpec" name="client_specs">
- <fieldref>num_client_specs</fieldref>
- </list>
- <list type="Range" name="ranges">
- <fieldref>num_ranges</fieldref>
- </list>
- </request>
-
- <request name="UnregisterClients" opcode="3">
- <field type="record:CONTEXT" name="context" />
- <field type="CARD32" name="num_client_specs" />
- <list type="ClientSpec" name="client_specs">
- <fieldref>num_client_specs</fieldref>
- </list>
- </request>
-
- <request name="GetContext" opcode="4">
- <field type="record:CONTEXT" name="context" />
- <reply>
- <field type="BOOL" name="enabled" />
- <field type="ElementHeader" name="element_header" />
- <pad bytes="3" />
- <field type="CARD32" name="num_intercepted_clients" />
- <pad bytes="16" />
- <list type="ClientInfo" name="intercepted_clients">
- <fieldref>num_intercepted_clients</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="EnableContext" opcode="5">
- <field type="record:CONTEXT" name="context" />
- <reply>
- <field type="CARD8" name="category" />
- <field type="ElementHeader" name="element_header" />
- <field type="BOOL" name="client_swapped" />
- <pad bytes="2" />
- <field type="CARD32" name="xid_base" />
- <field type="CARD32" name="server_time" />
- <field type="CARD32" name="rec_sequence_num" />
- <pad bytes="8" />
- <list type="BYTE" name="data" />
- </reply>
- </request>
-
- <request name="DisableContext" opcode="6">
- <field type="record:CONTEXT" name="context" />
- </request>
-
- <request name="FreeContext" opcode="7">
- <field type="record:CONTEXT" name="context" />
- </request>
-
-</xcb>
diff --git a/src/extensions/render.xml b/src/extensions/render.xml
deleted file mode 100644
index 88e9a40..0000000
--- a/src/extensions/render.xml
+++ /dev/null
@@ -1,544 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2002-2004 Carl D. Worth, Jamey Sharp, Bart Massey, Josh Triplett
-All Rights Reserved. See the file COPYING in this directory
-for licensing information.
--->
-<xcb header="render" extension-xname="RENDER" extension-name="Render">
- <!-- supports version 0.10 -->
-
- <import>xproto</import>
-
- <enum name="PictType">
- <item name="Indexed" />
- <item name="Direct" />
- </enum>
-
- <!-- Disjoint* and Conjoint* are new in version 0.2 -->
- <enum name="PictOp">
- <item name="Clear" />
- <item name="Src" />
- <item name="Dst" />
- <item name="Over" />
- <item name="OverReverse" />
- <item name="In" />
- <item name="InReverse" />
- <item name="Out" />
- <item name="OutReverse" />
- <item name="Atop" />
- <item name="AtopReverse" />
- <item name="Xor" />
- <item name="Add" />
- <item name="Saturate" />
-
- <item name="DisjointClear"><value>0x10</value></item>
- <item name="DisjointSrc" />
- <item name="DisjointDst" />
- <item name="DisjointOver" />
- <item name="DisjointOverReverse" />
- <item name="DisjointIn" />
- <item name="DisjointInReverse" />
- <item name="DisjointOut" />
- <item name="DisjointOutReverse" />
- <item name="DisjointAtop" />
- <item name="DisjointAtopReverse" />
- <item name="DisjointXor" />
-
- <item name="ConjointClear"><value>0x20</value></item>
- <item name="ConjointSrc" />
- <item name="ConjointDst" />
- <item name="ConjointOver" />
- <item name="ConjointOverReverse" />
- <item name="ConjointIn" />
- <item name="ConjointInReverse" />
- <item name="ConjointOut" />
- <item name="ConjointOutReverse" />
- <item name="ConjointAtop" />
- <item name="ConjointAtopReverse" />
- <item name="ConjointXor" />
- </enum>
-
- <enum name="PolyEdge">
- <item name="Sharp" />
- <item name="Smooth" />
- </enum>
-
- <enum name="PolyMode">
- <item name="Precise" />
- <item name="Imprecise" />
- </enum>
-
- <enum name="CP">
- <item name="Repeat"> <bit>0</bit></item>
- <item name="AlphaMap"> <bit>1</bit></item>
- <item name="AlphaXOrigin"> <bit>2</bit></item>
- <item name="AlphaYOrigin"> <bit>3</bit></item>
- <item name="ClipXOrigin"> <bit>4</bit></item>
- <item name="ClipYOrigin"> <bit>5</bit></item>
- <item name="ClipMask"> <bit>6</bit></item>
- <item name="GraphicsExposure"><bit>7</bit></item>
- <item name="SubwindowMode"> <bit>8</bit></item>
- <item name="PolyEdge"> <bit>9</bit></item>
- <item name="PolyMode"> <bit>10</bit></item>
- <item name="Dither"> <bit>11</bit></item>
- <item name="ComponentAlpha"> <bit>12</bit></item>
- </enum>
-
- <enum name="SubPixel">
- <item name="Unknown" />
- <item name="HorizontalRGB" />
- <item name="HorizontalBGR" />
- <item name="VerticalRGB" />
- <item name="VerticalBGR" />
- <item name="None" />
- </enum>
-
- <!-- Extended repeat attributes introduced in 0.10 -->
- <enum name="Repeat">
- <item name="None" />
- <item name="Normal" />
- <item name="Pad" />
- <item name="Reflect" />
- </enum>
-
- <typedef oldname="CARD32" newname="GLYPH" />
- <xidtype name="GLYPHSET" />
-
- <xidtype name="PICTURE" />
- <xidtype name="PICTFORMAT" />
-
- <typedef oldname="INT32" newname="FIXED" />
-
- <error name="PictFormat" number="0" />
- <error name="Picture" number="1" />
- <error name="PictOp" number="2" />
- <error name="GlyphSet" number="3" />
- <error name="Glyph" number="4" />
-
- <struct name="DIRECTFORMAT">
- <field type="CARD16" name="red_shift" />
- <field type="CARD16" name="red_mask" />
- <field type="CARD16" name="green_shift" />
- <field type="CARD16" name="green_mask" />
- <field type="CARD16" name="blue_shift" />
- <field type="CARD16" name="blue_mask" />
- <field type="CARD16" name="alpha_shift" />
- <field type="CARD16" name="alpha_mask" />
- </struct>
-
- <struct name="PICTFORMINFO">
- <field type="PICTFORMAT" name="id" />
- <field type="CARD8" name="type" />
- <field type="CARD8" name="depth" />
- <pad bytes="2" />
- <field type="DIRECTFORMAT" name="direct" />
- <field type="COLORMAP" name="colormap" />
- </struct>
-
- <struct name="PICTVISUAL">
- <field type="VISUALID" name="visual" />
- <field type="PICTFORMAT" name="format" />
- </struct>
-
- <struct name="PICTDEPTH">
- <field type="CARD8" name="depth" />
- <pad bytes="1" />
- <field type="CARD16" name="num_visuals" />
- <pad bytes="4" />
- <list type="PICTVISUAL" name="visuals">
- <fieldref>num_visuals</fieldref>
- </list>
- </struct>
-
- <struct name="PICTSCREEN">
- <field type="CARD32" name="num_depths" />
- <field type="PICTFORMAT" name="fallback" />
- <list type="PICTDEPTH" name="depths">
- <fieldref>num_depths</fieldref>
- </list>
- </struct>
-
- <struct name="INDEXVALUE">
- <field type="CARD32" name="pixel" />
- <field type="CARD16" name="red" />
- <field type="CARD16" name="green" />
- <field type="CARD16" name="blue" />
- <field type="CARD16" name="alpha" />
- </struct>
-
- <struct name="COLOR">
- <field type="CARD16" name="red" />
- <field type="CARD16" name="green" />
- <field type="CARD16" name="blue" />
- <field type="CARD16" name="alpha" />
- </struct>
-
- <struct name="POINTFIX">
- <field type="FIXED" name="x" />
- <field type="FIXED" name="y" />
- </struct>
-
- <struct name="LINEFIX">
- <field type="POINTFIX" name="p1" />
- <field type="POINTFIX" name="p2" />
- </struct>
-
- <struct name="TRIANGLE">
- <field type="POINTFIX" name="p1" />
- <field type="POINTFIX" name="p2" />
- <field type="POINTFIX" name="p3" />
- </struct>
-
- <struct name="TRAPEZOID">
- <field type="FIXED" name="top" />
- <field type="FIXED" name="bottom" />
- <field type="LINEFIX" name="left" />
- <field type="LINEFIX" name="right" />
- </struct>
-
- <struct name="GLYPHINFO">
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="INT16" name="x" />
- <field type="INT16" name="y" />
- <field type="INT16" name="x_off" />
- <field type="INT16" name="y_off" />
- </struct>
-
-
- <request name="QueryVersion" opcode="0">
- <field type="CARD32" name="client_major_version" />
- <field type="CARD32" name="client_minor_version" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="major_version" />
- <field type="CARD32" name="minor_version" />
- <pad bytes="16" />
- </reply>
- </request>
-
- <request name="QueryPictFormats" opcode="1">
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num_formats" />
- <field type="CARD32" name="num_screens" />
- <field type="CARD32" name="num_depths" />
- <field type="CARD32" name="num_visuals" />
- <field type="CARD32" name="num_subpixel" /> <!-- new in version 0.6 -->
- <pad bytes="4" />
- <list type="PICTFORMINFO" name="formats">
- <fieldref>num_formats</fieldref>
- </list>
- <list type="PICTSCREEN" name="screens">
- <fieldref>num_screens</fieldref>
- </list>
- <list type="CARD32" name="subpixels">
- <fieldref>num_subpixel</fieldref>
- </list>
- </reply>
- </request>
-
- <!-- from version 0.7 -->
- <request name="QueryPictIndexValues" opcode="2">
- <field type="PICTFORMAT" name="format" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num_values" />
- <pad bytes="20" />
- <list type="INDEXVALUE" name="values">
- <fieldref>num_values</fieldref>
- </list>
- </reply>
- </request>
-
- <!-- opcode 3 reserved for QueryDithers -->
-
- <request name="CreatePicture" opcode="4">
- <field type="PICTURE" name="pid" />
- <field type="DRAWABLE" name="drawable" />
- <field type="PICTFORMAT" name="format" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
- </request>
-
- <request name="ChangePicture" opcode="5">
- <field type="PICTURE" name="picture" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
- </request>
-
- <request name="SetPictureClipRectangles" opcode="6">
- <field type="PICTURE" name="picture" />
- <field type="INT16" name="clip_x_origin" />
- <field type="INT16" name="clip_y_origin" />
- <list type="RECTANGLE" name="rectangles" />
- </request>
-
- <request name="FreePicture" opcode="7">
- <field type="PICTURE" name="picture" />
- </request>
-
- <request name="Composite" opcode="8">
- <field type="CARD8" name="op" />
- <pad bytes="3" />
- <field type="PICTURE" name="src" />
- <field type="PICTURE" name="mask" />
- <field type="PICTURE" name="dst" />
- <field type="INT16" name="src_x" />
- <field type="INT16" name="src_y" />
- <field type="INT16" name="mask_x" />
- <field type="INT16" name="mask_y" />
- <field type="INT16" name="dst_x" />
- <field type="INT16" name="dst_y" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- </request>
-
- <!-- opcode 9 reserved for Scale -->
-
- <request name="Trapezoids" opcode="10">
- <field type="CARD8" name="op" />
- <pad bytes="3" />
- <field type="PICTURE" name="src" />
- <field type="PICTURE" name="dst" />
- <field type="PICTFORMAT" name="mask_format" />
- <field type="INT16" name="src_x" />
- <field type="INT16" name="src_y" />
- <list type="TRAPEZOID" name="traps" />
- </request>
-
- <request name="Triangles" opcode="11">
- <field type="CARD8" name="op" />
- <pad bytes="3" />
- <field type="PICTURE" name="src" />
- <field type="PICTURE" name="dst" />
- <field type="PICTFORMAT" name="mask_format" />
- <field type="INT16" name="src_x" />
- <field type="INT16" name="src_y" />
- <list type="TRIANGLE" name="triangles" />
- </request>
-
- <request name="TriStrip" opcode="12">
- <field type="CARD8" name="op" />
- <pad bytes="3" />
- <field type="PICTURE" name="src" />
- <field type="PICTURE" name="dst" />
- <field type="PICTFORMAT" name="mask_format" />
- <field type="INT16" name="src_x" />
- <field type="INT16" name="src_y" />
- <list type="POINTFIX" name="points" />
- </request>
-
- <request name="TriFan" opcode="13">
- <field type="CARD8" name="op" />
- <pad bytes="3" />
- <field type="PICTURE" name="src" />
- <field type="PICTURE" name="dst" />
- <field type="PICTFORMAT" name="mask_format" />
- <field type="INT16" name="src_x" />
- <field type="INT16" name="src_y" />
- <list type="POINTFIX" name="points" />
- </request>
-
- <!-- opcode 14 reserved for ColorTrapezoids -->
-
- <!-- opcode 15 reserved for ColorTriangles -->
-
- <!-- opcode 16 reserved for Transform -->
-
- <request name="CreateGlyphSet" opcode="17">
- <field type="GLYPHSET" name="gsid" />
- <field type="PICTFORMAT" name="format" />
- </request>
-
- <request name="ReferenceGlyphSet" opcode="18">
- <field type="GLYPHSET" name="gsid" />
- <field type="GLYPHSET" name="existing" />
- </request>
-
- <request name="FreeGlyphSet" opcode="19">
- <field type="GLYPHSET" name="glyphset" />
- </request>
-
- <request name="AddGlyphs" opcode="20">
- <field type="GLYPHSET" name="glyphset" />
- <field type="CARD32" name="glyphs_len" />
- <list type="CARD32" name="glyphids">
- <fieldref>glyphs_len</fieldref>
- </list>
- <list type="GLYPHINFO" name="glyphs">
- <fieldref>glyphs_len</fieldref>
- </list>
- <list type="BYTE" name="data" />
- </request>
-
- <!-- opcode 21 reserved for AddGlyphsFromPicture -->
-
- <request name="FreeGlyphs" opcode="22">
- <field type="GLYPHSET" name="glyphset" />
- <list type="GLYPH" name="glyphs" />
- </request>
-
- <request name="CompositeGlyphs8" opcode="23">
- <field type="CARD8" name="op" />
- <pad bytes="3" />
- <field type="PICTURE" name="src" />
- <field type="PICTURE" name="dst" />
- <field type="PICTFORMAT" name="mask_format" />
- <field type="GLYPHSET" name="glyphset" />
- <field type="INT16" name="src_x" />
- <field type="INT16" name="src_y" />
- <list type="BYTE" name="glyphcmds" />
- </request>
-
- <request name="CompositeGlyphs16" opcode="24">
- <field type="CARD8" name="op" />
- <pad bytes="3" />
- <field type="PICTURE" name="src" />
- <field type="PICTURE" name="dst" />
- <field type="PICTFORMAT" name="mask_format" />
- <field type="GLYPHSET" name="glyphset" />
- <field type="INT16" name="src_x" />
- <field type="INT16" name="src_y" />
- <list type="BYTE" name="glyphcmds" />
- </request>
-
- <request name="CompositeGlyphs32" opcode="25">
- <field type="CARD8" name="op" />
- <pad bytes="3" />
- <field type="PICTURE" name="src" />
- <field type="PICTURE" name="dst" />
- <field type="PICTFORMAT" name="mask_format" />
- <field type="GLYPHSET" name="glyphset" />
- <field type="INT16" name="src_x" />
- <field type="INT16" name="src_y" />
- <list type="BYTE" name="glyphcmds" />
- </request>
-
- <!-- new in version 0.1 -->
-
- <request name="FillRectangles" opcode="26">
- <field type="CARD8" name="op" />
- <pad bytes="3" />
- <field type="PICTURE" name="dst" />
- <field type="COLOR" name="color" />
- <list type="RECTANGLE" name="rects" />
- </request>
-
- <!-- new in version 0.5 -->
-
- <request name="CreateCursor" opcode="27">
- <field type="CURSOR" name="cid" />
- <field type="PICTURE" name="source" />
- <field type="CARD16" name="x" />
- <field type="CARD16" name="y" />
- </request>
-
- <!-- new in version 0.6 -->
-
- <struct name="TRANSFORM">
- <field type="FIXED" name="matrix11" />
- <field type="FIXED" name="matrix12" />
- <field type="FIXED" name="matrix13" />
- <field type="FIXED" name="matrix21" />
- <field type="FIXED" name="matrix22" />
- <field type="FIXED" name="matrix23" />
- <field type="FIXED" name="matrix31" />
- <field type="FIXED" name="matrix32" />
- <field type="FIXED" name="matrix33" />
- </struct>
-
- <request name="SetPictureTransform" opcode="28">
- <field type="PICTURE" name="picture" />
- <field type="TRANSFORM" name="transform" />
- </request>
-
- <request name="QueryFilters" opcode="29">
- <field type="DRAWABLE" name="drawable" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num_aliases" />
- <field type="CARD32" name="num_filters" />
- <pad bytes="16" />
- <list type="CARD16" name="aliases">
- <fieldref>num_aliases</fieldref>
- </list>
- <list type="STR" name="filters">
- <fieldref>num_filters</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="SetPictureFilter" opcode="30">
- <field type="PICTURE" name="picture" />
- <field type="CARD16" name="filter_len" />
- <list type="char" name="filter">
- <fieldref>filter_len</fieldref>
- </list>
- <list type="FIXED" name="values" />
- </request>
-
- <!-- new in version 0.8 -->
-
- <struct name="ANIMCURSORELT">
- <field type="CURSOR" name="cursor" />
- <field type="CARD32" name="delay" />
- </struct>
-
- <request name="CreateAnimCursor" opcode="31">
- <field type="CURSOR" name="cid" />
- <list type="ANIMCURSORELT" name="cursors" />
- </request>
-
- <!-- new in version 0.9 -->
-
- <struct name="SPANFIX">
- <field type="FIXED" name="l" />
- <field type="FIXED" name="r" />
- <field type="FIXED" name="y" />
- </struct>
-
- <struct name="TRAP">
- <field type="SPANFIX" name="top" />
- <field type="SPANFIX" name="bot" />
- </struct>
-
- <request name="AddTraps" opcode="32">
- <field type="PICTURE" name="picture" />
- <field type="INT16" name="x_off" />
- <field type="INT16" name="y_off" />
- <list type="TRAP" name="traps" />
- </request>
-
- <!-- new in version 0.10 -->
-
- <request name="CreateSolidFill" opcode="33">
- <field type="PICTURE" name="picture" />
- <field type="COLOR" name="color" />
- </request>
-
- <request name="CreateLinearGradient" opcode="34">
- <field type="PICTURE" name="picture" />
- <field type="POINTFIX" name="p1" />
- <field type="POINTFIX" name="p2" />
- <field type="CARD32" name="num_stops" />
- </request>
-
- <request name="CreateRadialGradient" opcode="35">
- <field type="PICTURE" name="picture" />
- <field type="POINTFIX" name="inner" />
- <field type="POINTFIX" name="outer" />
- <field type="FIXED" name="inner_radius" />
- <field type="FIXED" name="outer_radius" />
- <field type="CARD32" name="num_stops" />
- </request>
-
- <request name="CreateConicalGradient" opcode="36">
- <field type="PICTURE" name="picture" />
- <field type="POINTFIX" name="center" />
- <field type="FIXED" name="angle" /> <!-- degrees -->
- <field type="CARD32" name="num_stops" />
- </request>
-</xcb>
diff --git a/src/extensions/res.xml b/src/extensions/res.xml
deleted file mode 100644
index eda0cbe..0000000
--- a/src/extensions/res.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2006 Jeremy Kolb
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-<xcb header="res" extension-xname="X-Resource" extension-name="Res">
- <struct name="Client">
- <field type="CARD32" name="resource_base" />
- <field type="CARD32" name="resource_mask" />
- </struct>
-
- <struct name="Type">
- <field type="CARD32" name="resource_type" />
- <field type="CARD32" name="count" />
- </struct>
-
- <request name="QueryVersion" opcode="0">
- <field type="CARD8" name="client_major" />
- <field type="CARD8" name="client_minor" />
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="server_major" />
- <field type="CARD16" name="server_minor" />
- </reply>
- </request>
-
- <request name="QueryClients" opcode="1">
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num_clients" />
- <pad bytes="20" />
- <list type="Client" name="clients">
- <fieldref>num_clients</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="QueryClientResources" opcode="2">
- <field type="CARD32" name="xid" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num_types" />
- <pad bytes="20" />
- <list type="Type" name="types">
- <fieldref>num_types</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="QueryClientPixmapBytes" opcode="3">
- <field type="CARD32" name="xid" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="bytes" />
- <field type="CARD32" name="bytes_overflow" />
- </reply>
- </request>
-</xcb>
diff --git a/src/extensions/screensaver.xml b/src/extensions/screensaver.xml
deleted file mode 100644
index 1a095de..0000000
--- a/src/extensions/screensaver.xml
+++ /dev/null
@@ -1,126 +0,0 @@
-<!--
-
-Copyright (C) 2005 Vincent Torri.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person ob/Sintaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-<!--
-Screen Saver Extension to the X Protocol
-Draft Standard Version 1.1
--->
-<xcb header="screensaver" extension-xname="MIT-SCREEN-SAVER" extension-name="ScreenSaver">
- <!-- Types -->
-
- <import>xproto</import>
-
- <enum name="Kind">
- <item name="Blanked" />
- <item name="Internal" />
- <item name="External" />
- </enum>
-
- <enum name="Event">
- <item name="NotifyMask"><bit>0</bit></item>
- <item name="CycleMask"> <bit>1</bit></item>
- </enum>
-
- <enum name="State">
- <item name="Off" />
- <item name="On" />
- <item name="Cycle" />
- <item name="Disabled" />
- </enum>
-
- <!-- Errors -->
- <!-- Requests -->
- <request name="QueryVersion" opcode="0">
- <field type="CARD8" name="client_major_version"/>
- <field type="CARD8" name="client_minor_version"/>
- <pad bytes="2"/>
- <reply>
- <pad bytes="1"/>
- <field type="CARD16" name="server_major_version"/>
- <field type="CARD16" name="server_minor_version"/>
- <pad bytes="20"/>
- </reply>
- </request>
-
- <request name="QueryInfo" opcode="1">
- <field type="DRAWABLE" name="drawable"/>
- <reply>
- <field type="CARD8" name="state"/>
- <field type="WINDOW" name="saver_window"/>
- <field type="CARD32" name="ms_until_server"/>
- <field type="CARD32" name="ms_since_user_input"/>
- <field type="CARD32" name="event_mask" />
- <field type="BYTE" name="kind"/> <!-- enum Kind -->
- <pad bytes="7"/>
- </reply>
- </request>
-
- <request name="SelectInput" opcode="2">
- <field type="DRAWABLE" name="drawable"/>
- <field type="CARD32" name="event_mask" /> <!-- enum Event -->
- </request>
-
- <request name="SetAttributes" opcode="3">
- <field type="DRAWABLE" name="drawable"/>
- <field type="INT16" name="x"/>
- <field type="INT16" name="y"/>
- <field type="CARD16" name="width"/>
- <field type="CARD16" name="height"/>
- <field type="CARD16" name="border_width"/>
- <field type="BYTE" name="class"/> <!-- enum XCBWindowClass -->
- <field type="CARD8" name="depth"/>
- <field type="VISUALID" name="visual"/>
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
- </request>
-
- <request name="UnsetAttributes" opcode="4">
- <field type="DRAWABLE" name="drawable"/>
- </request>
-
- <!-- version 1.1 -->
- <request name="Suspend" opcode="5">
- <field type="BOOL" name="suspend" />
- <pad bytes="3" />
- </request>
-
- <!-- Events -->
-
- <event name="Notify" number="0">
- <field type="CARD8" name="code"/>
- <field type="BYTE" name="state"/> <!-- enum State -->
- <field type="CARD16" name="sequence_number"/>
- <field type="TIMESTAMP" name="time"/>
- <field type="WINDOW" name="root"/>
- <field type="WINDOW" name="window"/>
- <field type="BYTE" name="kind"/> <!-- enum Kind -->
- <field type="BOOL" name="forced"/>
- <pad bytes="14"/>
- </event>
-
-</xcb>
diff --git a/src/extensions/shape.xml b/src/extensions/shape.xml
deleted file mode 100644
index 36d0652..0000000
--- a/src/extensions/shape.xml
+++ /dev/null
@@ -1,151 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2001-2004 Bart Massey, Jamey Sharp, and Josh Triplett.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-<!-- This file describes version 1.1 of the Shape extension. -->
-<xcb header="shape" extension-xname="SHAPE" extension-name="Shape">
- <import>xproto</import>
-
- <typedef oldname="CARD8" newname="OP" />
- <typedef oldname="CARD8" newname="KIND" />
-
- <!-- Shape attributes of type OP. -->
- <enum name="SO">
- <item name="Set" />
- <item name="Union" />
- <item name="Intersect" />
- <item name="Subtract" />
- <item name="Invert" />
- </enum>
-
- <!-- Shape attributes of type KIND. -->
- <enum name="SK">
- <item name="Bounding" />
- <item name="Clip" />
- <item name="Input" /> <!-- added in version 1.1 -->
- </enum>
-
- <event name="Notify" number="0">
- <field type="KIND" name="shape_kind" />
- <field type="WINDOW" name="affected_window" />
- <field type="INT16" name="extents_x" />
- <field type="INT16" name="extents_y" />
- <field type="CARD16" name="extents_width" />
- <field type="CARD16" name="extents_height" />
- <field type="TIMESTAMP" name="server_time" />
- <field type="BOOL" name="shaped" />
- </event>
-
- <request name="QueryVersion" opcode="0">
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="major_version" />
- <field type="CARD16" name="minor_version" />
- </reply>
- </request>
-
- <request name="Rectangles" opcode="1">
- <field type="OP" name="operation" />
- <field type="KIND" name="destination_kind" />
- <field type="BYTE" name="ordering" />
- <pad bytes="1" />
- <field type="WINDOW" name="destination_window" />
- <field type="INT16" name="x_offset" />
- <field type="INT16" name="y_offset" />
- <list type="RECTANGLE" name="rectangles" />
- </request>
-
- <request name="Mask" opcode="2">
- <field type="OP" name="operation" />
- <field type="KIND" name="destination_kind" />
- <pad bytes="2" />
- <field type="WINDOW" name="destination_window" />
- <field type="INT16" name="x_offset" />
- <field type="INT16" name="y_offset" />
- <field type="PIXMAP" name="source_bitmap" />
- </request>
-
- <request name="Combine" opcode="3">
- <field type="OP" name="operation" />
- <field type="KIND" name="destination_kind" />
- <field type="KIND" name="source_kind" />
- <pad bytes="1" />
- <field type="WINDOW" name="destination_window" />
- <field type="INT16" name="x_offset" />
- <field type="INT16" name="y_offset" />
- <field type="WINDOW" name="source_window" />
- </request>
-
- <request name="Offset" opcode="4">
- <field type="KIND" name="destination_kind" />
- <pad bytes="3" />
- <field type="WINDOW" name="destination_window" />
- <field type="INT16" name="x_offset" />
- <field type="INT16" name="y_offset" />
- </request>
-
- <request name="QueryExtents" opcode="5">
- <field type="WINDOW" name="destination_window" />
- <reply>
- <pad bytes="1" />
- <field type="BOOL" name="bounding_shaped" />
- <field type="BOOL" name="clip_shaped" />
- <pad bytes="2" />
- <field type="INT16" name="bounding_shape_extents_x" />
- <field type="INT16" name="bounding_shape_extents_y" />
- <field type="CARD16" name="bounding_shape_extents_width" />
- <field type="CARD16" name="bounding_shape_extents_height" />
- <field type="INT16" name="clip_shape_extents_x" />
- <field type="INT16" name="clip_shape_extents_y" />
- <field type="CARD16" name="clip_shape_extents_width" />
- <field type="CARD16" name="clip_shape_extents_height" />
- </reply>
- </request>
-
- <request name="SelectInput" opcode="6">
- <field type="WINDOW" name="destination_window" />
- <field type="BOOL" name="enable" />
- </request>
-
- <request name="InputSelected" opcode="7">
- <field type="WINDOW" name="destination_window" />
- <reply>
- <field type="BOOL" name="enabled" />
- </reply>
- </request>
-
- <request name="GetRectangles" opcode="8">
- <field type="WINDOW" name="window" />
- <field type="KIND" name="source_kind" />
- <reply>
- <field type="BYTE" name="ordering" />
- <field type="CARD32" name="rectangles_len" />
- <list type="RECTANGLE" name="rectangles">
- <fieldref>rectangles_len</fieldref>
- </list>
- </reply>
- </request>
-</xcb>
diff --git a/src/extensions/shm.xml b/src/extensions/shm.xml
deleted file mode 100644
index e576c1f..0000000
--- a/src/extensions/shm.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2001-2004 Bart Massey, Jamey Sharp, and Josh Triplett.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-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">
- <import>xproto</import>
-
- <xidtype name="SEG" />
-
- <event name="Completion" number="0">
- <pad bytes="1" />
- <field type="DRAWABLE" name="drawable" />
- <field type="SEG" name="shmseg" />
- <field type="CARD16" name="minor_event" />
- <field type="BYTE" name="major_event" />
- <pad bytes="1" />
- <field type="CARD32" name="offset" />
- </event>
-
- <errorcopy name="BadSeg" number="0" ref="Value" />
-
- <request name="QueryVersion" opcode="0">
- <reply>
- <field type="BOOL" name="shared_pixmaps" />
- <field type="CARD16" name="major_version" />
- <field type="CARD16" name="minor_version" />
- <field type="CARD16" name="uid" />
- <field type="CARD16" name="gid" />
- <field type="CARD8" name="pixmap_format" />
- </reply>
- </request>
-
- <request name="Attach" opcode="1">
- <field type="SEG" name="shmseg" />
- <field type="CARD32" name="shmid" />
- <field type="BOOL" name="read_only" />
- </request>
-
- <request name="Detach" opcode="2">
- <field type="SEG" name="shmseg" />
- </request>
-
- <request name="PutImage" opcode="3">
- <field type="DRAWABLE" name="drawable" />
- <field type="GCONTEXT" name="gc" />
- <field type="CARD16" name="total_width" />
- <field type="CARD16" name="total_height" />
- <field type="CARD16" name="src_x" />
- <field type="CARD16" name="src_y" />
- <field type="CARD16" name="src_width" />
- <field type="CARD16" name="src_height" />
- <field type="INT16" name="dst_x" />
- <field type="INT16" name="dst_y" />
- <field type="CARD8" name="depth" />
- <field type="CARD8" name="format" />
- <field type="CARD8" name="send_event" />
- <pad bytes="1" />
- <field type="SEG" name="shmseg" />
- <field type="CARD32" name="offset" />
- </request>
-
- <request name="GetImage" opcode="4">
- <field type="DRAWABLE" name="drawable" />
- <field type="INT16" name="x" />
- <field type="INT16" name="y" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="CARD32" name="plane_mask" />
- <field type="CARD8" name="format" />
- <pad bytes="3" />
- <field type="SEG" name="shmseg" />
- <field type="CARD32" name="offset" />
- <reply>
- <field type="CARD8" name="depth" />
- <field type="VISUALID" name="visual" />
- <field type="CARD32" name="size" />
- </reply>
- </request>
-
- <request name="CreatePixmap" opcode="5">
- <field type="PIXMAP" name="pid" />
- <field type="DRAWABLE" name="drawable" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="CARD8" name="depth" />
- <pad bytes="3" />
- <field type="SEG" name="shmseg" />
- <field type="CARD32" name="offset" />
- </request>
-</xcb>
diff --git a/src/extensions/sync.xml b/src/extensions/sync.xml
deleted file mode 100644
index 6efca36..0000000
--- a/src/extensions/sync.xml
+++ /dev/null
@@ -1,188 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2004 Mikko Torni and Josh Triplett.
-All Rights Reserved. See the file COPYING in this directory
-for licensing information.
--->
-<xcb header="sync" extension-xname="SYNC" extension-name="Sync">
- <import>xproto</import>
-
- <xidtype name="ALARM" />
-
- <enum name="ALARMSTATE">
- <item name="Active" />
- <item name="Inactive" />
- <item name="Destroyed" />
- </enum>
-
- <xidtype name="COUNTER" />
-
- <enum name="TESTTYPE">
- <item name="PositiveTransition" />
- <item name="NegativeTransition" />
- <item name="PositiveComparison" />
- <item name="NegativeComparison" />
- </enum>
-
- <enum name="VALUETYPE">
- <item name="Absolute" />
- <item name="Relative" />
- </enum>
-
- <enum name="CA">
- <item name="Counter"> <bit>0</bit></item>
- <item name="ValueType"><bit>1</bit></item>
- <item name="Value"> <bit>2</bit></item>
- <item name="TestType"> <bit>3</bit></item>
- <item name="Delta"> <bit>4</bit></item>
- <item name="Events"> <bit>5</bit></item>
- </enum>
-
- <struct name="INT64">
- <field type="INT32" name="hi" />
- <field type="CARD32" name="lo" />
- </struct>
-
- <struct name="SYSTEMCOUNTER">
- <field type="COUNTER" name="counter" />
- <field type="INT64" name="resolution" />
- <field type="CARD16" name="name_len" />
- <list type="CARD8" name="name">
- <fieldref>name_len</fieldref>
- </list>
- </struct>
-
- <struct name="TRIGGER">
- <field type="COUNTER" name="counter" />
- <field type="VALUETYPE" name="wait_type" />
- <field type="INT64" name="wait_value" />
- <field type="TESTTYPE" name="test_type" />
- </struct>
-
- <struct name="WAITCONDITION">
- <field type="TRIGGER" name="trigger" />
- <field type="INT64" name="event_threshold" />
- </struct>
-
- <error name="Counter" number="0">
- <field type="CARD32" name="bad_counter" />
- <field type="CARD16" name="minor_opcode" />
- <field type="CARD8" name="major_opcode" />
- </error>
-
- <error name="Alarm" number="1">
- <field type="CARD32" name="bad_alarm" />
- <field type="CARD16" name="minor_opcode" />
- <field type="CARD8" name="major_opcode" />
- </error>
-
- <request name="Initialize" opcode="0">
- <reply>
- <pad bytes="1" />
- <field type="CARD8" name="major_version" />
- <field type="CARD8" name="minor_version" />
- </reply>
- </request>
-
- <request name="ListSystemCounters" opcode="1">
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="counters_len" />
- <pad bytes="20" />
- <list type="SYSTEMCOUNTER" name="counters">
- <fieldref>counters_len</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="CreateCounter" opcode="2">
- <field type="COUNTER" name="id" />
- <field type="INT64" name="initial_value" />
- </request>
-
- <request name="DestroyCounter" opcode="6">
- <field type="COUNTER" name="counter" />
- </request>
-
- <request name="QueryCounter" opcode="5">
- <field type="COUNTER" name="counter" />
- <reply>
- <pad bytes="1" />
- <field type="INT64" name="counter_value" />
- </reply>
- </request>
-
- <request name="Await" opcode="7">
- <list type="WAITCONDITION" name="wait_list" />
- </request>
-
- <request name="ChangeCounter" opcode="4">
- <field type="COUNTER" name="counter" />
- <field type="INT64" name="amount" />
- </request>
-
- <request name="SetCounter" opcode="3">
- <field type="COUNTER" name="counter" />
- <field type="INT64" name="value" />
- </request>
-
- <request name="CreateAlarm" opcode="8">
- <field type="ALARM" name="id" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
- </request>
-
- <request name="ChangeAlarm" opcode="9">
- <field type="ALARM" name="id" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="value_mask"
- value-list-name="value_list" />
- </request>
-
- <request name="DestroyAlarm" opcode="11">
- <field type="ALARM" name="alarm" />
- </request>
-
- <request name="QueryAlarm" opcode="10">
- <field type="ALARM" name="alarm" />
- <reply>
- <pad bytes="1" />
- <field type="TRIGGER" name="trigger" />
- <field type="INT64" name="delta" />
- <field type="BOOL" name="events" />
- <field type="ALARMSTATE" name="state" />
- </reply>
- </request>
-
- <request name="SetPriority" opcode="12">
- <field type="CARD32" name="id" />
- <field type="INT32" name="priority" />
- </request>
-
- <request name="GetPriority" opcode="13">
- <field type="CARD32" name="id" />
- <reply>
- <pad bytes="1" />
- <field type="INT32" name="priority" />
- </reply>
- </request>
-
- <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="TIMESTAMP" name="timestamp" />
- <field type="CARD16" name="count" />
- <field type="BOOL" name="destroyed" />
- </event>
-
- <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="TIMESTAMP" name="timestamp" />
- </event>
-</xcb>
diff --git a/src/extensions/xc_misc.xml b/src/extensions/xc_misc.xml
deleted file mode 100644
index 8643503..0000000
--- a/src/extensions/xc_misc.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2004 Mikko Torni and Josh Triplett.
-All Rights Reserved. See the file COPYING in this directory
-for licensing information.
--->
-<xcb header="xc_misc" extension-xname="XC-MISC" extension-name="XCMisc">
- <request name="GetVersion" opcode="0">
- <field type="CARD16" name="client_major_version" />
- <field type="CARD16" name="client_minor_version" />
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="server_major_version" />
- <field type="CARD16" name="server_minor_version" />
- </reply>
- </request>
-
- <request name="GetXIDRange" opcode="1">
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="start_id" />
- <field type="CARD32" name="count" />
- </reply>
- </request>
-
- <request name="GetXIDList" opcode="2">
- <field type="CARD32" name="count" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="ids_len" />
- <pad bytes="20" />
- <list type="CARD32" name="ids">
- <fieldref>ids_len</fieldref>
- </list>
- </reply>
- </request>
-</xcb>
diff --git a/src/extensions/xevie.xml b/src/extensions/xevie.xml
deleted file mode 100644
index 1e5851f..0000000
--- a/src/extensions/xevie.xml
+++ /dev/null
@@ -1,84 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2004 Josh Triplett. All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-<!-- This file describes version 1 of XEVIE. -->
-<xcb header="xevie" extension-xname="XEVIE" extension-name="Xevie">
- <request name="QueryVersion" opcode="0">
- <field type="CARD16" name="client_major_version" />
- <field type="CARD16" name="client_minor_version" />
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="server_major_version" />
- <field type="CARD16" name="server_minor_version" />
- <pad bytes="20" />
- </reply>
- </request>
-
- <request name="Start" opcode="1">
- <field type="CARD32" name="screen" />
- <reply>
- <pad bytes="1" />
- <pad bytes="24" />
- </reply>
- </request>
-
- <request name="End" opcode="2">
- <field type="CARD32" name="cmap" />
- <reply>
- <pad bytes="1" />
- <pad bytes="24" />
- </reply>
- </request>
-
- <enum name="Datatype">
- <item name="Unmodified" />
- <item name="Modified" />
- </enum>
-
- <!-- The Send request needs to send an arbitrary Event; this type is used
- to reserve the necessary structure size. -->
- <struct name="Event">
- <pad bytes="32" />
- </struct>
-
- <request name="Send" opcode="3">
- <field type="Event" name="event" />
- <field type="CARD32" name="data_type" /> <!-- Datatype -->
- <pad bytes="64" />
- <reply>
- <pad bytes="1" />
- <pad bytes="24" />
- </reply>
- </request>
-
- <request name="SelectInput" opcode="4">
- <field type="CARD32" name="event_mask" />
- <reply>
- <pad bytes="1" />
- <pad bytes="24" />
- </reply>
- </request>
-</xcb>
diff --git a/src/extensions/xf86dri.xml b/src/extensions/xf86dri.xml
deleted file mode 100644
index bb37ca7..0000000
--- a/src/extensions/xf86dri.xml
+++ /dev/null
@@ -1,168 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2005 Jeremy Kolb.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person ob/Sintaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-
-<xcb header="xf86dri" extension-xname="XFree86-DRI" extension-name="XF86Dri">
-
- <!-- Using http://dri.sourceforge.net/doc/dri_extensions_low_level.txt -->
-
- <!-- Types -->
-
- <struct name="DrmClipRect">
- <field type="INT16" name="x1" />
- <field type="INT16" name="y1" />
- <field type="INT16" name="x2" />
- <field type="INT16" name="x3" />
- </struct>
-
- <!-- Requests -->
- <request name="QueryVersion" opcode="0">
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="dri_major_version" />
- <field type="CARD16" name="dri_minor_version" />
- <field type="CARD32" name="dri_minor_patch" />
- </reply>
- </request>
-
- <request name="QueryDirectRenderingCapable" opcode="1">
- <field type="CARD32" name="screen" />
- <reply>
- <pad bytes="1" />
- <field type="BOOL" name="is_capable" />
- </reply>
- </request>
-
- <request name="OpenConnection" opcode="2">
- <field type="CARD32" name="screen" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="drm_client_key_low" />
- <field type="CARD32" name="drm_client_key_high" />
- <field type="CARD32" name="sarea_handle_low" />
- <field type="CARD32" name="sarea_handle_high" />
- <field type="CARD32" name="bus_id_len" />
- <pad bytes="12" />
- <list type="CARD8" name="bus_id">
- <fieldref>bus_id_len</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="CloseConnection" opcode="3">
- <field type="CARD32" name="screen" />
- </request>
-
- <request name="GetClientDriverName" opcode="4">
- <field type="CARD32" name="screen" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="client_driver_major_version" />
- <field type="CARD32" name="client_driver_minor_version" />
- <field type="CARD32" name="client_driver_patch_version" />
- <field type="CARD32" name="client_driver_name_len" />
- <pad bytes="8" />
- <list type="CARD8" name="client_driver_name">
- <fieldref>client_driver_name_len</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="CreateContext" opcode="5">
- <field type="CARD32" name="visual" />
- <field type="CARD32" name="screen" />
- <field type="CARD32" name="context" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="hw_context" />
- </reply>
- </request>
-
- <request name="DestroyContext" opcode="6">
- <field type="CARD32" name="screen" />
- <field type="CARD32" name="context" />
- </request>
-
- <request name="CreateDrawable" opcode="7">
- <field type="CARD32" name="screen" />
- <field type="CARD32" name="drawable" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="hw_drawable_handle" />
- </reply>
- </request>
-
- <request name="DestroyDrawable" opcode="8">
- <field type="CARD32" name="screen" />
- <field type="CARD32" name="drawable" />
- </request>
-
- <request name="GetDrawableInfo" opcode="9">
- <field type="CARD32" name="screen" />
- <field type="CARD32" name="drawable" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="drawable_table_index" />
- <field type="CARD32" name="drawable_table_stamp" />
- <field type="INT16" name="drawable_origin_X" />
- <field type="INT16" name="drawable_origin_Y" />
- <field type="INT16" name="drawable_size_W" />
- <field type="INT16" name="drawable_size_H" />
- <field type="CARD32" name="num_clip_rects" />
- <pad bytes="4" />
- <list type="DrmClipRect" name="clip_rects">
- <fieldref>num_clip_rects</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GetDeviceInfo" opcode="10">
- <field type="CARD32" name="screen" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="framebuffer_handle_low" />
- <field type="CARD32" name="framebuffer_handle_high" />
- <field type="CARD32" name="framebuffer_origin_offset" />
- <field type="CARD32" name="framebuffer_size" />
- <field type="CARD32" name="framebuffer_stride" />
- <field type="CARD32" name="device_private_size" />
- <list type="CARD32" name="device_private">
- <fieldref>device_private_size</fieldref>
- </list>
- </reply>
- </request>
-
- <!-- Not in this doc, but specified in Mesa/src/glx/x11/xf86dri.h -->
- <request name="AuthConnection" opcode="11">
- <field type="CARD32" name="screen" />
- <field type="CARD32" name="magic" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="authenticated" />
- </reply>
- </request>
-</xcb>
diff --git a/src/extensions/xfixes.xml b/src/extensions/xfixes.xml
deleted file mode 100644
index 9f890cb..0000000
--- a/src/extensions/xfixes.xml
+++ /dev/null
@@ -1,324 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2004 Josh Triplett. All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-<!-- This file describes version 4 of XFixes. -->
-<xcb header="xfixes" extension-xname="XFIXES" extension-name="XFixes">
- <import>xproto</import>
- <import>render</import>
- <import>shape</import>
-
- <!-- Version 1 -->
- <request name="QueryVersion" opcode="0">
- <field type="CARD32" name="client_major_version" />
- <field type="CARD32" name="client_minor_version" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="major_version" />
- <field type="CARD32" name="minor_version" />
- <pad bytes="16" />
- </reply>
- </request>
-
- <enum name="SaveSetMode">
- <item name="Insert" />
- <item name="Delete" />
- </enum>
-
- <enum name="SaveSetTarget">
- <item name="Nearest" />
- <item name="Root" />
- </enum>
-
- <enum name="SaveSetMapping">
- <item name="Map" />
- <item name="Unmap" />
- </enum>
-
- <request name="ChangeSaveSet" opcode="1">
- <field type="BYTE" name="mode" /> <!-- SaveSetMode -->
- <field type="BYTE" name="target" /> <!-- SaveSetTarget -->
- <field type="BYTE" name="map" /> <!-- SaveSetMapping -->
- <pad bytes="1" />
- <field type="WINDOW" name="window" />
- </request>
-
- <enum name="SelectionEvent">
- <item name="SetSelectionOwner" />
- <item name="SelectionWindowDestroy" />
- <item name="SelectionClientClose" />
- </enum>
-
- <enum name="SelectionEventMask">
- <item name="SetSelectionOwner"> <bit>0</bit></item>
- <item name="SelectionWindowDestroy"><bit>1</bit></item>
- <item name="SelectionClientClose"> <bit>2</bit></item>
- </enum>
-
- <event name="SelectionNotify" number="0">
- <field type="CARD8" name="subtype" /> <!-- SelectionEvent -->
- <field type="WINDOW" name="window" />
- <field type="WINDOW" name="owner" />
- <field type="ATOM" name="selection" />
- <field type="TIMESTAMP" name="timestamp" />
- <field type="TIMESTAMP" name="selection_timestamp" />
- <pad bytes="8" />
- </event>
-
- <request name="SelectSelectionInput" opcode="2">
- <field type="WINDOW" name="window" />
- <field type="ATOM" name="selection" />
- <field type="CARD32" name="event_mask" /> <!-- SelectionEventMask -->
- </request>
-
- <enum name="CursorNotify">
- <item name="DisplayCursor" />
- </enum>
-
- <enum name="CursorNotifyMask">
- <item name="DisplayCursor"><bit>0</bit></item>
- </enum>
-
- <event name="CursorNotify" number="1">
- <field type="CARD8" name="subtype" /> <!-- 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 -->
- <pad bytes="12" />
- </event>
-
- <request name="SelectCursorInput" opcode="3">
- <field type="WINDOW" name="window" />
- <field type="CARD32" name="event_mask" /> <!-- CursorNotifyMask -->
- </request>
-
- <request name="GetCursorImage" opcode="4">
- <reply>
- <pad bytes="1" />
- <field type="INT16" name="x" />
- <field type="INT16" name="y" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="CARD16" name="xhot" />
- <field type="CARD16" name="yhot" />
- <field type="CARD32" name="cursor_serial" />
- <pad bytes="8" />
- <list type="CARD32" name="cursor_image">
- <op op="*">
- <fieldref>width</fieldref>
- <fieldref>height</fieldref>
- </op>
- </list>
- </reply>
- </request>
-
- <!-- Version 2 -->
-
- <xidtype name="REGION" />
-
- <error name="BadRegion" number="0" />
-
- <request name="CreateRegion" opcode="5">
- <field type="REGION" name="region" />
- <list type="RECTANGLE" name="rectangles" />
- </request>
-
- <request name="CreateRegionFromBitmap" opcode="6">
- <field type="REGION" name="region" />
- <field type="PIXMAP" name="bitmap" />
- </request>
-
- <request name="CreateRegionFromWindow" opcode="7">
- <field type="REGION" name="region" />
- <field type="WINDOW" name="window" />
- <field type="shape:KIND" name="kind" />
- <pad bytes="3" />
- </request>
-
- <request name="CreateRegionFromGC" opcode="8">
- <field type="REGION" name="region" />
- <field type="GCONTEXT" name="gc" />
- </request>
-
- <request name="CreateRegionFromPicture" opcode="9">
- <field type="REGION" name="region" />
- <field type="PICTURE" name="picture" />
- </request>
-
- <request name="DestroyRegion" opcode="10">
- <field type="REGION" name="region" />
- </request>
-
- <request name="SetRegion" opcode="11">
- <field type="REGION" name="region" />
- <list type="RECTANGLE" name="rectangles" />
- </request>
-
- <request name="CopyRegion" opcode="12">
- <field type="REGION" name="source" />
- <field type="REGION" name="destination" />
- </request>
-
- <request name="UnionRegion" opcode="13">
- <field type="REGION" name="source1" />
- <field type="REGION" name="source2" />
- <field type="REGION" name="destination" />
- </request>
-
- <request name="IntersectRegion" opcode="14">
- <field type="REGION" name="source1" />
- <field type="REGION" name="source2" />
- <field type="REGION" name="destination" />
- </request>
-
- <request name="SubtractRegion" opcode="15">
- <field type="REGION" name="source1" />
- <field type="REGION" name="source2" />
- <field type="REGION" name="destination" />
- </request>
-
- <request name="InvertRegion" opcode="16">
- <field type="REGION" name="source" />
- <field type="RECTANGLE" name="bounds" />
- <field type="REGION" name="destination" />
- </request>
-
- <request name="TranslateRegion" opcode="17">
- <field type="REGION" name="region" />
- <field type="INT16" name="dx" />
- <field type="INT16" name="dy" />
- </request>
-
- <request name="RegionExtents" opcode="18">
- <field type="REGION" name="source" />
- <field type="REGION" name="destination" />
- </request>
-
- <request name="FetchRegion" opcode="19">
- <field type="REGION" name="region" />
- <reply>
- <pad bytes="1" />
- <field type="RECTANGLE" name="extents" />
- <pad bytes="16" />
- <list type="RECTANGLE" name="rectangles" />
- </reply>
- </request>
-
- <request name="SetGCClipRegion" opcode="20">
- <field type="GCONTEXT" name="gc" />
- <field type="REGION" name="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" />
- <pad bytes="3" />
- <field type="INT16" name="x_offset" />
- <field type="INT16" name="y_offset" />
- <field type="REGION" name="region" />
- </request>
-
- <request name="SetPictureClipRegion" opcode="22">
- <field type="PICTURE" name="picture" />
- <field type="REGION" name="region" />
- <field type="INT16" name="x_origin" />
- <field type="INT16" name="y_origin" />
- </request>
-
- <request name="SetCursorName" opcode="23">
- <field type="CURSOR" name="cursor" />
- <field type="CARD16" name="nbytes" />
- <pad bytes="2" />
- <list type="CARD8" 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="CARD16" name="nbytes" />
- <pad bytes="18" />
- <list type="CARD8" name="name"><fieldref>nbytes</fieldref></list>
- </reply>
- </request>
-
- <request name="GetCursorImageAndName" opcode="25">
- <reply>
- <pad bytes="1" />
- <field type="INT16" name="x" />
- <field type="INT16" name="y" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="CARD16" name="xhot" />
- <field type="CARD16" name="yhot" />
- <field type="CARD32" name="cursor_serial" />
- <field type="ATOM" name="cursor_atom" />
- <field type="CARD16" name="nbytes" />
- <pad bytes="2" />
- <list type="CARD8" name="name"><fieldref>nbytes</fieldref></list>
- <list type="CARD32" name="cursor_image">
- <op op="*">
- <fieldref>width</fieldref>
- <fieldref>height</fieldref>
- </op>
- </list>
- </reply>
- </request>
-
- <request name="ChangeCursor" opcode="26">
- <field type="CURSOR" name="source" />
- <field type="CURSOR" name="destination" />
- </request>
-
- <request name="ChangeCursorByName" opcode="27">
- <field type="CURSOR" name="src" />
- <field type="CARD16" name="nbytes" />
- <pad bytes="2" />
- <list type="CARD8" name="name"><fieldref>nbytes</fieldref></list>
- </request>
-
- <!-- Version 3 -->
- <request name="ExpandRegion" opcode="28">
- <field type="REGION" name="source" />
- <field type="REGION" name="destination" />
- <field type="CARD16" name="left" />
- <field type="CARD16" name="right" />
- <field type="CARD16" name="top" />
- <field type="CARD16" name="bottom" />
- </request>
-
- <!-- Version 4 -->
- <request name="HideCursor" opcode="29">
- <field type="WINDOW" name="window" />
- </request>
-
- <request name="ShowCursor" opcode="30">
- <field type="WINDOW" name="window" />
- </request>
-</xcb>
diff --git a/src/extensions/xinerama.xml b/src/extensions/xinerama.xml
deleted file mode 100644
index 2566787..0000000
--- a/src/extensions/xinerama.xml
+++ /dev/null
@@ -1,98 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2006 Jeremy Kolb.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-
-<xcb header="xinerama" extension-xname="XINERAMA" extension-name="Xinerama">
-
- <!-- Version 1.1 -->
-
- <import>xproto</import>
-
- <struct name="ScreenInfo">
- <field type="INT16" name="x_org" />
- <field type="INT16" name="y_org" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- </struct>
-
- <request name="QueryVersion" opcode="0">
- <field type="CARD8" name="major" />
- <field type="CARD8" name="minor" />
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="major" />
- <field type="CARD16" name="minor" />
- </reply>
- </request>
-
- <request name="GetState" opcode="1">
- <field type="WINDOW" name="window" />
- <reply>
- <field type="BYTE" name="state" />
- <field type="WINDOW" name="window" />
- </reply>
- </request>
-
- <request name="GetScreenCount" opcode="2">
- <field type="WINDOW" name="window" />
- <reply>
- <field type="BYTE" name="screen_count" />
- <field type="WINDOW" name="window" />
- </reply>
- </request>
-
- <request name="GetScreenSize" opcode="3">
- <field type="WINDOW" name="window" />
- <field type="SCREEN" name="screen" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="width" />
- <field type="CARD32" name="height" />
- <field type="WINDOW" name="window" />
- <field type="SCREEN" name="screen" />
- </reply>
- </request>
-
- <request name="IsActive" opcode="4">
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="state" />
- </reply>
- </request>
-
- <request name="QueryScreens" opcode="5">
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="number" />
- <pad bytes="20" />
- <list type="ScreenInfo" name="screen_info">
- <fieldref>number</fieldref>
- </list>
- </reply>
- </request>
-
-</xcb>
diff --git a/src/extensions/xprint.xml b/src/extensions/xprint.xml
deleted file mode 100644
index 11cd7c0..0000000
--- a/src/extensions/xprint.xml
+++ /dev/null
@@ -1,326 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2005 Jeremy Kolb.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person ob/Sintaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-
-<xcb header="xprint" extension-xname="XpExtension" extension-name="XP">
- <!-- Conforms to XPRINT 1.0 -->
-
- <import>xproto</import>
-
- <!-- Types -->
- <struct name="PRINTER">
- <field type="CARD32" name="nameLen" />
- <list type="STRING8" name="name">
- <fieldref>nameLen</fieldref>
- </list>
- <!-- Padding -->
- <field type="CARD32" name="descLen" />
- <list type="STRING8" name="description">
- <fieldref>descLen</fieldref>
- </list>
- <!-- More padding -->
- </struct>
-
- <!--<typedef oldname="CARD32" newname="PCONTEXT" />-->
- <xidtype name="PCONTEXT" />
- <typedef oldname="char" newname="STRING8" />
-
- <!-- "PrintGetDocumentData" -->
- <enum name="GetDoc">
- <item name="Finished"><value>0</value></item>
- <item name="SecondConsumer"><value>1</value></item>
- </enum>
-
- <!-- Event Mask ("PrintSelectInput") -->
- <enum name="EvMask">
- <item name="NoEventMask"><value>0x00000000</value></item>
- <item name="PrintMask"><value>0x00000001</value></item>
- <item name="AttributeMask"><value>0x00000002</value></item>
- </enum>
-
- <!-- "PrintNotify" detail -->
- <enum name="Detail">
- <item name="StartJobNotify"><value>1</value></item>
- <item name="EndJobNotify"><value>2</value></item>
- <item name="StartDocNotify"><value>3</value></item>
- <item name="EndDocNotify"><value>4</value></item>
- <item name="StartPageNotify"><value>5</value></item>
- <item name="EndPageNotify"><value>6</value></item>
- </enum>
-
- <!-- "AttributeNotify" detail -->
- <enum name="Attr">
- <item name="JobAttr"><value>1</value></item>
- <item name="DocAttr"><value>2</value></item>
- <item name="PageAttr"><value>3</value></item>
- <item name="PrinterAttr"><value>4</value></item>
- <item name="ServerAttr"><value>5</value></item>
- <item name="MediumAttr"><value>6</value></item>
- <item name="SpoolerAttr"><value>7</value></item>
- </enum>
-
-
- <!-- Requests -->
- <request name="PrintQueryVersion" opcode="0">
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="major_version" />
- <field type="CARD16" name="minor_version" />
- </reply>
- </request>
-
- <request name="PrintGetPrinterList" opcode="1">
- <field type="CARD32" name="printerNameLen" />
- <field type="CARD32" name="localeLen" />
- <list type="STRING8" name="printer_name">
- <fieldref>printerNameLen</fieldref>
- </list>
- <!-- There's some padding in here... -->
- <list type="STRING8" name="locale">
- <fieldref>localeLen</fieldref>
- </list>
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="listCount" />
- <pad bytes="20" />
- <list type="PRINTER" name="printers">
- <fieldref>listCount</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="PrintRehashPrinterList" opcode="20" />
-
- <request name="CreateContext" opcode="2">
- <field type="CARD32" name="context_id" />
- <field type="CARD32" name="printerNameLen" />
- <field type="CARD32" name="localeLen" />
- <list type="STRING8" name="printerName">
- <fieldref>printerNameLen</fieldref>
- </list>
- <!-- padding -->
- <list type="STRING8" name="locale">
- <fieldref>localeLen</fieldref>
- </list>
- </request>
-
- <request name="PrintSetContext" opcode="3">
- <field type="CARD32" name="context" />
- </request>
-
- <request name="PrintGetContext" opcode="4">
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="context" />
- </reply>
- </request>
-
- <request name="PrintDestroyContext" opcode="5">
- <field type="CARD32" name="context" />
- </request>
-
- <request name="PrintGetScreenOfContext" opcode="6">
- <reply>
- <pad bytes="1" />
- <field type="WINDOW" name="root" />
- </reply>
- </request>
-
- <request name="PrintStartJob" opcode="7">
- <field type="CARD8" name="output_mode"/>
- </request>
-
- <request name="PrintEndJob" opcode="8">
- <field type="BOOL" name="cancel" />
- </request>
-
- <request name="PrintStartDoc" opcode="9">
- <field type="CARD8" name="driver_mode" />
- </request>
-
- <request name="PrintEndDoc" opcode="10">
- <field type="BOOL" name="cancel" />
- </request>
-
- <request name="PrintPutDocumentData" opcode="11">
- <field type="DRAWABLE" name="drawable" />
- <field type="CARD32" name="len_data" />
- <field type="CARD16" name="len_fmt" />
- <field type="CARD16" name="len_options" />
- <list type="BYTE" name="data">
- <fieldref>len_data</fieldref>
- </list>
- <!-- padding -->
- <list type="STRING8" name="doc_format" />
- <!-- padding -->
- <list type="STRING8" name="options" />
- </request>
-
- <request name="PrintGetDocumentData" opcode="12">
- <field type="PCONTEXT" name="context" />
- <field type="CARD32" name="max_bytes" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="status_code" />
- <field type="CARD32" name="finished_flag" />
- <field type="CARD32" name="dataLen" />
- <pad bytes="12" />
- <list type="BYTE" name="data">
- <fieldref>dataLen</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="PrintStartPage" opcode="13">
- <field type="WINDOW" name="window" />
- </request>
-
- <request name="PrintEndPage" opcode="14">
- <field type="BOOL" name="cancel" />
- <pad bytes="3" />
- </request>
-
- <request name="PrintSelectInput" opcode="15">
- <field type="PCONTEXT" name="context" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="event_mask"
- value-list-name="event_list" />
- </request>
-
- <request name="PrintInputSelected" opcode="16">
- <field type="PCONTEXT" name="context" />
- <reply>
- <pad bytes="1" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="event_mask"
- value-list-name="event_list" />
- <valueparam value-mask-type="CARD32"
- value-mask-name="all_events_mask"
- value-list-name="all_events_list" />
- </reply>
- </request>
-
- <request name="PrintGetAttributes" opcode="17">
- <field type="PCONTEXT" name="context" />
- <field type="CARD8" name="pool" />
- <pad bytes="3" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="stringLen" />
- <pad bytes="20" />
- <field type="STRING8" name="attributes" />
- </reply>
- </request>
-
- <request name="PrintGetOneAttributes" opcode="19">
- <field type="PCONTEXT" name="context" />
- <field type="CARD32" name="nameLen" />
- <field type="CARD8" name="pool" />
- <pad bytes="3" />
- <list type="STRING8" name="name">
- <fieldref>nameLen</fieldref>
- </list>
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="valueLen" />
- <pad bytes="20" />
- <list type="STRING8" name="value">
- <fieldref>valueLen</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="PrintSetAttributes" opcode="18">
- <field type="PCONTEXT" name="context" />
- <field type="CARD32" name="stringLen" />
- <field type="CARD8" name="pool" />
- <field type="CARD8" name="rule" />
- <pad bytes="2" />
- <list type="STRING8" name="attributes" />
- </request>
-
- <request name="PrintGetPageDimensions" opcode="21">
- <field type="PCONTEXT" name="context" />
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="CARD16" name="offset_x" />
- <field type="CARD16" name="offset_y" />
- <field type="CARD16" name="reproducible_width" />
- <field type="CARD16" name="reproducible_height" />
- </reply>
- </request>
-
- <request name="PrintQueryScreens" opcode="22">
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="listCount" />
- <pad bytes="20" />
- <list type="WINDOW" name="roots">
- <fieldref>listCount</fieldref>
- </list>
- <!-- There may be a WINDOW rootWindow here... -->
- </reply>
- </request>
-
- <request name="PrintSetImageResolution" opcode="23">
- <field type="PCONTEXT" name="context" />
- <field type="CARD16" name="image_resolution" />
- <reply>
- <field type="BOOL" name="status" />
- <field type="CARD16" name="previous_resolutions" />
- </reply>
- </request>
-
- <request name="PrintGetImageResolution" opcode="24">
- <field type="PCONTEXT" name="context" />
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="image_resolution" />
- </reply>
- </request>
-
-
- <!-- Events -->
- <event name="Notify" number="0">
- <field type="CARD8" name="detail" />
- <field type="PCONTEXT" name="context" />
- <field type="BOOL" name="cancel" />
- </event>
-
- <event name="AttributNotify" number="1">
- <field type="CARD8" name="detail" />
- <field type="PCONTEXT" name="context" />
- </event>
-
- <!-- Errors -->
- <error name="BadContext" number="0" />
- <error name="BadSequence" number="1" />
-
-</xcb>
-
diff --git a/src/extensions/xtest.xml b/src/extensions/xtest.xml
deleted file mode 100644
index 72adf0b..0000000
--- a/src/extensions/xtest.xml
+++ /dev/null
@@ -1,105 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2006 Ian Osgood
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person ob/Sintaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-
-<xcb header="xtest" extension-xname="XTEST" extension-name="Test">
- <!-- Conforms to XTEST 2.1 -->
-
- <import>xproto</import>
-
- <!-- Requests -->
- <request name="GetVersion" opcode="0">
- <field type="CARD8" name="major_version" />
- <pad bytes="1" />
- <field type="CARD16" name="minor_version" />
- <reply>
- <field type="CARD8" name="major_version" />
- <field type="CARD16" name="minor_version" />
- </reply>
- </request>
-
- <enum name="Cursor">
- <item name="None"> <value>0</value></item>
- <item name="Current"><value>1</value></item>
- </enum>
-
- <request name="CompareCursor" opcode="1">
- <field type="WINDOW" name="window" />
- <field type="CURSOR" name="cursor" />
- <reply>
- <field type="BOOL" name="same" />
- </reply>
- </request>
-
- <!-- There are several ways to use the FakeInput request:
- 1. Simulate a keypress:
- type = XCBKeyPress or XCBKeyRelease
- detail = keycode
- 2. Simulate a button:
- type = XCBButtonPress or XCBButtonRelease
- detail = enum XCBButton (1..5)
- 3. Simulate mouse motion:
- type = XCBMotionNotify
- detail = 0 or 1
- window = XCBNone or a root window id
- rootX,
- rootY = position (relative if detail==1)
-
- Version 2.2 adds support for the XInput extension:
- 4. Simulate a device keypress
- 5. Simulate a device button
- 6. Simulate a proximity event
- 7. Simulate a device motion event
- [These are not yet supported, since we would also need to
- send the variable-length state of the axes.]
-
- In each case, time is set to a delay in milliseconds.
- -->
-
- <request name="FakeInput" opcode="2">
- <field type="BYTE" name="type" />
- <field type="BYTE" name="detail" />
- <pad bytes="2" />
- <field type="CARD32" name="time" />
- <field type="WINDOW" name="window" />
- <pad bytes="8" />
- <field type="CARD16" name="rootX" />
- <field type="CARD16" name="rootY" />
- <pad bytes="7" />
- <!-- Version 2.2: XInput device -->
- <field type="CARD8" name="deviceid" />
- <!-- Version 2.2: optional axes state here -->
- </request>
-
- <request name="GrabControl" opcode="3">
- <field type="BOOL" name="impervious" />
- <pad bytes="3" />
- </request>
-
- <!-- No events or errors -->
-
-</xcb>
\ No newline at end of file
diff --git a/src/extensions/xv.xml b/src/extensions/xv.xml
deleted file mode 100644
index b232dea..0000000
--- a/src/extensions/xv.xml
+++ /dev/null
@@ -1,430 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2006 Jeremy Kolb.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-
-<xcb header="xv" extension-xname="XVideo" extension-name="Xv">
- <import>xproto</import>
- <import>shm</import>
- <!-- Implements version 2.2 of XV -->
-
- <!-- XIDs -->
- <xidtype name="PORT" />
- <xidtype name="ENCODING" />
-
- <enum name="Type">
- <item name="InputMask"><value>0x00000001</value></item>
- <item name="OutputMask"><value>0x00000002</value></item>
- <item name="VideoMask"><value>0x00000004</value></item>
- <item name="StillMask"><value>0x00000008</value></item>
- <item name="ImageMask"><value>0x00000010</value></item>
- </enum>
-
- <enum name="ImageFormatInfoType">
- <item name="RGB" />
- <item name="YUV" />
- </enum>
-
- <enum name="ImageFormatInfoFormat">
- <item name="Packed" />
- <item name="Planar" />
- </enum>
-
- <enum name="AttributeFlag">
- <item name="Gettable"><value>0x01</value></item>
- <item name="Settable"><value>0x02</value></item>
- </enum>
-
- <struct name="Rational">
- <field type="INT32" name="numerator" />
- <field type="INT32" name="denominator" />
- </struct>
-
- <struct name="AdaptorInfo">
- <field type="PORT" name="base_id" />
- <field type="CARD16" name="name_size" />
- <field type="CARD16" name="num_ports" />
- <field type="CARD16" name="num_formats" />
- <field type="CARD8" name="type" />
- <field type="CARD8" name="pad" />
- <list type="char" name="name">
- <fieldref>name_size</fieldref>
- </list>
- <list type="Format" name="formats">
- <fieldref>num_formats</fieldref>
- </list>
-
- </struct>
-
- <struct name="EncodingInfo">
- <field type="ENCODING" name="encoding" />
- <field type="CARD16" name="name_size" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="Rational" name="rate" />
- <!--
- Xvproto.h has a padding CARD16 here but the name
- overlaps.
- -->
- <list type="char" name="name">
- <fieldref>name_size</fieldref>
- </list>
- </struct>
-
- <struct name="Format">
- <field type="VISUALID" name="visual" />
- <field type="CARD8" name="depth" />
- </struct>
-
- <struct name="Image">
- <field type="CARD32" name="id" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="CARD32" name="data_size" />
- <field type="CARD32" name="num_planes" />
- <list type="CARD32" name="pitches">
- <fieldref>num_planes</fieldref>
- </list>
- <list type="CARD32" name="offsets">
- <fieldref>num_planes</fieldref>
- </list>
- <list type="CARD8" name="data">
- <fieldref>data_size</fieldref>
- </list>
- <!-- Some XPointer "obdata" for SHM use-->
- </struct>
-
- <struct name="AttributeInfo">
- <field type="CARD32" name="flags" />
- <field type="INT32" name="min" />
- <field type="INT32" name="max" />
- <field type="CARD32" name="size" />
- <list type="char" name="name">
- <fieldref>size</fieldref>
- </list>
- </struct>
-
- <struct name="ImageFormatInfo">
- <field type="CARD32" name="id" />
- <field type="CARD8" name="type" />
- <field type="CARD8" name="byte_order" />
- <field type="CARD16" name="pad1" />
- <list type="CARD8" name="guid">
- <value>16</value>
- </list>
- <field type="CARD8" name="bpp" />
- <field type="CARD8" name="num_planes" />
- <field type="CARD16" name="pad2" />
- <field type="CARD8" name="depth" />
- <field type="CARD8" name="pad3" />
- <field type="CARD16" name="pad4" />
- <field type="CARD32" name="red_mask" />
- <field type="CARD32" name="green_mask" />
- <field type="CARD32" name="blue_mask" />
- <field type="CARD8" name="format" />
- <field type="CARD8" name="pad5" />
- <field type="CARD16" name="pad6" />
- <field type="CARD32" name="y_sample_bits" />
- <field type="CARD32" name="u_sample_bits" />
- <field type="CARD32" name="v_sample_bits" />
- <field type="CARD32" name="vhorz_y_period" />
- <field type="CARD32" name="vhorz_u_period" />
- <field type="CARD32" name="vhorz_v_period" />
- <field type="CARD32" name="vvert_y_period" />
- <field type="CARD32" name="vvert_u_period" />
- <field type="CARD32" name="vvert_v_period" />
- <list type="CARD8" name="vcomp_order">
- <value>32</value>
- </list>
- <field type="CARD8" name="vscanline_order" />
- <field type="CARD8" name="vpad7" />
- <field type="CARD16" name="vpad8" />
- <field type="CARD32" name="vpad9" />
- <field type="CARD32" name="vpad10" />
- </struct>
-
-
- <!-- Errors -->
- <error name="BadPort" number="0"/>
- <error name="BadEncoding" number="1"/>
- <error name="BadControl" number="2"/>
-
- <!-- Events -->
- <event name="VideoNotify" number="0">
- <field type="BYTE" name="reason" />
- <field type="TIMESTAMP" name="time" />
- <field type="DRAWABLE" name="drawable" />
- <field type="PORT" name="port" />
- </event>
-
- <event name="PortNotify" number="1">
- <pad bytes="1" />
- <field type="TIMESTAMP" name="time" />
- <field type="PORT" name="port" />
- <field type="ATOM" name="attribute" />
- <field type="INT32" name="value" />
- </event>
-
-
- <!-- Requests -->
- <request name="QueryExtension" opcode="0">
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="major" />
- <field type="CARD16" name="minor" />
- </reply>
- </request>
-
- <request name="QueryAdaptors" opcode="1">
- <field type="WINDOW" name="window" />
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="num_adaptors" />
- <pad bytes="22" />
- <list type="AdaptorInfo" name="info">
- <fieldref>num_adaptors</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="QueryEncodings" opcode="2">
- <field type="PORT" name="port" />
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="num_encodings" />
- <!--
- In Xvproto.h this padding is 24 bytes
- in actuality it is 22 bytes
- -->
- <pad bytes="22" />
- <list type="EncodingInfo" name="info">
- <fieldref>num_encodings</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="GrabPort" opcode="3">
- <field type="PORT" name="port" />
- <field type="TIMESTAMP" name="time" />
- <reply>
- <field type="BYTE" name="result" />
- </reply>
- </request>
-
- <request name="UngrabPort" opcode="4">
- <field type="PORT" name="port" />
- <field type="TIMESTAMP" name="time" />
- </request>
-
- <request name="PutVideo" opcode="5">
- <field type="PORT" name="port" />
- <field type="DRAWABLE" name="drawable" />
- <field type="GCONTEXT" name="gc" />
- <field type="INT16" name="vid_x" />
- <field type="INT16" name="vid_y" />
- <field type="CARD16" name="vid_w" />
- <field type="CARD16" name="vid_h" />
- <field type="INT16" name="drw_x" />
- <field type="INT16" name="drw_y" />
- <field type="CARD16" name="drw_w" />
- <field type="CARD16" name="drw_h" />
- </request>
-
- <request name="PutStill" opcode="6">
- <field type="PORT" name="port" />
- <field type="DRAWABLE" name="drawable" />
- <field type="GCONTEXT" name="gc" />
- <field type="INT16" name="vid_x" />
- <field type="INT16" name="vid_y" />
- <field type="CARD16" name="vid_w" />
- <field type="CARD16" name="vid_h" />
- <field type="INT16" name="drw_x" />
- <field type="INT16" name="drw_y" />
- <field type="CARD16" name="drw_w" />
- <field type="CARD16" name="drw_h" />
- </request>
-
- <request name="GetVideo" opcode="7">
- <field type="PORT" name="port" />
- <field type="DRAWABLE" name="drawable" />
- <field type="GCONTEXT" name="gc" />
- <field type="INT16" name="vid_x" />
- <field type="INT16" name="vid_y" />
- <field type="CARD16" name="vid_w" />
- <field type="CARD16" name="vid_h" />
- <field type="INT16" name="drw_x" />
- <field type="INT16" name="drw_y" />
- <field type="CARD16" name="drw_w" />
- <field type="CARD16" name="drw_h" />
- </request>
-
- <request name="GetStill" opcode="8">
- <field type="PORT" name="port" />
- <field type="DRAWABLE" name="drawable" />
- <field type="GCONTEXT" name="gc" />
- <field type="INT16" name="vid_x" />
- <field type="INT16" name="vid_y" />
- <field type="CARD16" name="vid_w" />
- <field type="CARD16" name="vid_h" />
- <field type="INT16" name="drw_x" />
- <field type="INT16" name="drw_y" />
- <field type="CARD16" name="drw_w" />
- <field type="CARD16" name="drw_h" />
- </request>
-
- <request name="StopVideo" opcode="9">
- <field type="PORT" name="port" />
- <field type="DRAWABLE" name="drawable" />
- </request>
-
- <request name="SelectVideoNotify" opcode="10">
- <field type="DRAWABLE" name="drawable" />
- <field type="BOOL" name="onoff" />
- </request>
-
- <request name="SelectPortNotify" opcode="11">
- <field type="DRAWABLE" name="drawable" />
- <field type="BOOL" name="onoff" />
- </request>
-
- <request name="QueryBestSize" opcode="12">
- <field type="PORT" name="port" />
- <field type="CARD16" name="vid_w" />
- <field type="CARD16" name="vid_h" />
- <field type="CARD16" name="drw_w" />
- <field type="CARD16" name="drw_h" />
- <field type="BOOL" name="motion" />
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="actual_width" />
- <field type="CARD16" name="actual_height" />
- </reply>
- </request>
-
- <request name="SetPortAttribute" opcode="13">
- <field type="PORT" name="port" />
- <field type="ATOM" name="attribute" />
- <field type="INT32" name="value" />
- </request>
-
- <request name="GetPortAttribute" opcode="14">
- <field type="PORT" name="port" />
- <field type="ATOM" name="attribute" />
- <reply>
- <pad bytes="1" />
- <field type="INT32" name="value" />
- </reply>
- </request>
-
- <!-- Not in the docs beyond this point :( -->
-
- <request name="QueryPortAttributes" opcode="15">
- <field type="PORT" name="port" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num_attributes" />
- <field type="CARD32" name="text_size" />
- <pad bytes="16" />
- <list type="AttributeInfo" name="attributes">
- <fieldref>num_attributes</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="ListImageFormats" opcode="16">
- <field type="PORT" name="port" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num_formats" />
- <pad bytes="20" />
- <list type="ImageFormatInfo" name="format">
- <fieldref>num_formats</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="QueryImageAttributes" opcode="17">
- <field type="PORT" name="port" />
- <field type="CARD32" name="id" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num_planes" />
- <field type="CARD32" name="data_size" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <pad bytes="12" />
- <list type="CARD32" name="pitches">
- <fieldref>num_planes</fieldref>
- </list>
- <list type="CARD32" name="offsets">
- <fieldref>num_planes</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="PutImage" opcode="18">
- <field type="PORT" name="port" />
- <field type="DRAWABLE" name="drawable" />
- <field type="GCONTEXT" name="gc" />
- <field type="CARD32" name="id" />
- <field type="INT16" name="src_x" />
- <field type="INT16" name="src_y" />
- <field type="CARD16" name="src_w" />
- <field type="CARD16" name="src_h" />
- <field type="INT16" name="drw_x" />
- <field type="INT16" name="drw_y" />
- <field type="CARD16" name="drw_w" />
- <field type="CARD16" name="drw_h" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <localfield type="CARD32" name="data_size" />
- <list type="CARD8" name="data">
- <fieldref>data_size</fieldref>
- </list>
- </request>
-
- <request name="ShmPutImage" opcode="19">
- <field type="PORT" name="port" />
- <field type="DRAWABLE" name="drawable" />
- <field type="GCONTEXT" name="gc" />
- <field type="SEG" name="shmseg" />
- <field type="CARD32" name="id" />
- <field type="CARD32" name="offset" />
- <field type="INT16" name="src_x" />
- <field type="INT16" name="src_y" />
- <field type="CARD16" name="src_w" />
- <field type="CARD16" name="src_h" />
- <field type="INT16" name="drw_x" />
- <field type="INT16" name="drw_y" />
- <field type="CARD16" name="drw_w" />
- <field type="CARD16" name="drw_h" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="CARD8" name="send_event" />
- </request>
-</xcb>
diff --git a/src/extensions/xvmc.xml b/src/extensions/xvmc.xml
deleted file mode 100644
index e2eb04d..0000000
--- a/src/extensions/xvmc.xml
+++ /dev/null
@@ -1,140 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright (C) 2006 Jeremy Kolb.
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the names of the authors or their
-institutions shall not be used in advertising or otherwise to promote the
-sale, use or other dealings in this Software without prior written
-authorization from the authors.
--->
-
-<xcb header="xvmc" extension-xname="XVideo-MotionCompensation" extension-name="XvMC">
- <import>xv</import>
-
- <xidtype name="CONTEXT" />
- <xidtype name="SURFACE" />
- <xidtype name="SUBPICTURE" />
-
- <struct name="SurfaceInfo">
- <field type="SURFACE" name="id" />
- <field type="CARD16" name="chroma_format" />
- <field type="CARD16" name="pad0" />
- <field type="CARD16" name="max_width" />
- <field type="CARD16" name="max_height" />
- <field type="CARD16" name="subpicture_max_width" />
- <field type="CARD16" name="subpicture_max_height" />
- <field type="CARD32" name="mc_type" />
- <field type="CARD32" name="flags" />
- </struct>
-
- <request name="QueryVersion" opcode="0">
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="major" />
- <field type="CARD32" name="minor" />
- </reply>
- </request>
-
- <request name="ListSurfaceTypes" opcode="1">
- <field type="PORT" name="port_id" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num" />
- <pad bytes="20" />
- <list type="SurfaceInfo" name="surfaces">
- <fieldref>num</fieldref>
- </list>
- </reply>
- </request>
-
- <request name="CreateContext" opcode="2">
- <field type="CONTEXT" name="context_id" />
- <field type="PORT" name="port_id" />
- <field type="SURFACE" name="surface_id" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <field type="CARD32" name="flags" />
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="width_actual" />
- <field type="CARD16" name="height_actual" />
- <field type="CARD32" name="flags_return" />
- <pad bytes="20" />
- <list type="CARD32" name="priv_data" />
- </reply>
- </request>
-
- <request name="DestroyContext" opcode="3">
- <field type="CONTEXT" name="context_id" />
- </request>
-
- <request name="CreateSurface" opcode="4">
- <field type="SURFACE" name="surface_id" />
- <field type="CONTEXT" name="context_id" />
- <reply>
- <pad bytes="1" />
- <pad bytes="24" />
- <list type="CARD32" name="priv_data" />
- </reply>
- </request>
-
- <request name="DestroySurface" opcode="5">
- <field type="SURFACE" name="surface_id" />
- </request>
-
- <request name="CreateSubpicture" opcode="6">
- <field type="SUBPICTURE" name="subpicture_id" />
- <field type="CONTEXT" name="context" />
- <field type="CARD32" name="xvimage_id" />
- <field type="CARD16" name="width" />
- <field type="CARD16" name="height" />
- <reply>
- <pad bytes="1" />
- <field type="CARD16" name="width_actual" />
- <field type="CARD16" name="height_actual" />
- <field type="CARD16" name="num_palette_entries" />
- <field type="CARD16" name="entry_bytes" />
- <list type="CARD8" name="component_order">
- <value>4</value>
- </list>
- <pad bytes="12" />
- <list type="CARD32" name="priv_data" />
- </reply>
- </request>
-
- <request name="DestroySubpicture" opcode="7">
- <field type="SUBPICTURE" name="subpicture_id" />
- </request>
-
- <request name="ListSubpictureTypes" opcode="8">
- <field type="PORT" name="port_id" />
- <field type="SURFACE" name="surface_id" />
- <reply>
- <pad bytes="1" />
- <field type="CARD32" name="num" />
- <pad bytes="20" />
- <list type="ImageFormatInfo" name="types">
- <fieldref>num</fieldref>
- </list>
- </reply>
- </request>
-
-</xcb>
diff --git a/src/glx.xml b/src/glx.xml
new file mode 100644
index 0000000..5f8b5e6
--- /dev/null
+++ b/src/glx.xml
@@ -0,0 +1,1466 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2005 Jeremy Kolb.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person ob/Sintaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+
+<!--
+Note that on X.org servers before 6.9 (and probably others as well) the length
+field in the reply is computed incorrectly for GetFBConfigs and
+VendorPrivateWithReply vendor_code 0x10004 (GetFBConfigsSGIX). For these
+requests the reply structure begins:
+ <pad bytes="1" />
+ <field type="CARD32" name="numVisuals" />
+ <field type="CARD32" name="numProps" />
+The correct value for the length field is
+ numVisuals * numProps * 2
+but on broken servers the "* 2" was missing. A workaround that is correct for
+all implementations is to rewrite the length field on receipt on the client
+side, using the expression above.
+
+The patch that fixed this server bug in X.org CVS is here:
+ http://cvs.freedesktop.org/xorg/xserver/xorg/GL/glx/glxcmds.c?r1=1.6&r2=1.7
+-->
+
+<xcb header="glx" extension-xname="GLX" extension-name="Glx">
+ <!-- target support: 1.3 -->
+
+ <import>xproto</import>
+
+ <xidtype name="PIXMAP" />
+ <xidtype name="CONTEXT" />
+ <xidtype name="PBUFFER" />
+ <xidtype name="WINDOW" />
+ <xidtype name="FBCONFIG" />
+
+ <xidunion name="DRAWABLE">
+ <type>xproto:WINDOW</type>
+ <type>PBUFFER</type>
+ <type>glx:PIXMAP</type>
+ <type>glx:WINDOW</type>
+ </xidunion>
+
+ <typedef oldname="float" newname="FLOAT32" />
+ <typedef oldname="double" newname="FLOAT64" />
+ <typedef oldname="CARD32" newname="BOOL32" />
+ <typedef oldname="CARD32" newname="CONTEXT_TAG" />
+
+ <!-- Errors -->
+ <error name="Generic" number="-1"> <!-- FIXME: fake number -->
+ <field type="CARD32" name="bad_value" />
+ <field type="CARD16" name="minor_opcode" />
+ <field type="CARD8" name="major_opcode" />
+ <pad bytes="21" />
+ </error>
+
+ <errorcopy name="BadContext" number="0" ref="Generic" />
+ <errorcopy name="BadContextState" number="1" ref="Generic" />
+ <errorcopy name="BadDrawable" number="2" ref="Generic" />
+ <errorcopy name="BadPixmap" number="3" ref="Generic" />
+ <errorcopy name="BadContextTag" number="4" ref="Generic" />
+ <errorcopy name="BadCurrentWindow" number="5" ref="Generic" />
+ <errorcopy name="BadRenderRequest" number="6" ref="Generic" />
+ <errorcopy name="BadLargeRequest" number="7" ref="Generic" />
+ <errorcopy name="UnsupportedPrivateRequest" number="8" ref="Generic" />
+ <errorcopy name="BadFBConfig" number="9" ref="Generic" />
+ <errorcopy name="BadPbuffer" number="10" ref="Generic" />
+ <errorcopy name="BadCurrentDrawable" number="11" ref="Generic" />
+ <errorcopy name="BadWindow" number="12" ref="Generic" />
+
+ <!-- Events -->
+ <event name="PbufferClobber" number="0">
+ <field type="CARD16" name="event_type" />
+ <field type="CARD16" name="draw_type" />
+ <field type="glx:DRAWABLE" name="drawable" />
+ <field type="CARD32" name="b_mask" />
+ <field type="CARD16" name="aux_buffer" />
+ <field type="CARD16" name="x" />
+ <field type="CARD16" name="y" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <field type="CARD16" name="count" />
+ <pad bytes="4" />
+ </event>
+
+ <!-- enums for PbufferClobber event/draw type -->
+ <enum name="PBCET">
+ <item name="Damaged">
+ <value>0x8017</value>
+ </item>
+ <item name="Saved">
+ <value>0x8018</value>
+ </item>
+ </enum>
+
+ <enum name="PBCDT">
+ <item name="Window">
+ <value>0x8019</value>
+ </item>
+ <item name="Pbuffer">
+ <value>0x801A</value>
+ </item>
+ </enum>
+
+ <!-- Requests -->
+ <request name="Render" opcode="1" combine-adjacent="true">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <list type="BYTE" name="data" />
+ </request>
+
+ <request name="RenderLarge" opcode="2">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD16" name="request_num" />
+ <field type="CARD16" name="request_total" />
+ <field type="CARD32" name="data_len" />
+ <list type="BYTE" name="data">
+ <fieldref>data_len</fieldref>
+ </list>
+ </request>
+
+ <request name="CreateContext" opcode="3">
+ <field type="glx:CONTEXT" name="context" />
+ <field type="VISUALID" name="visual" />
+ <field type="CARD32" name="screen" />
+ <field type="glx:CONTEXT" name="share_list" />
+ <field type="BOOL" name="is_direct" />
+ <pad bytes="3" />
+ </request>
+
+ <request name="DestroyContext" opcode="4">
+ <field type="glx:CONTEXT" name="context" />
+ </request>
+
+ <request name="MakeCurrent" opcode="5">
+ <field type="glx:DRAWABLE" name="drawable" />
+ <field type="glx:CONTEXT" name="context" />
+ <field type="CONTEXT_TAG" name="old_context_tag" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <pad bytes="20" />
+ </reply>
+ </request>
+
+ <request name="IsDirect" opcode="6">
+ <field type="glx:CONTEXT" name="context" />
+ <reply>
+ <pad bytes="1" />
+ <field type="BOOL" name="is_direct" />
+ <pad bytes="23" />
+ </reply>
+ </request>
+
+ <request name="QueryVersion" opcode="7">
+ <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" />
+ <pad bytes="16" />
+ </reply>
+ </request>
+
+ <request name="WaitGL" opcode="8">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ </request>
+
+ <request name="WaitX" opcode="9">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ </request>
+
+ <request name="CopyContext" opcode="10">
+ <field type="glx:CONTEXT" name="src" />
+ <field type="glx:CONTEXT" name="dest" />
+ <field type="CARD32" name="mask" />
+ <field type="CONTEXT_TAG" name="src_context_tag" />
+ </request>
+
+ <!-- Enum for CopyContext: mask -->
+ <enum name="GC">
+ <item name="GL_CURRENT_BIT"><value>0x00000001</value></item>
+ <item name="GL_POINT_BIT"><value>0x00000002</value></item>
+ <item name="GL_LINE_BIT"><value>0x00000004</value></item>
+ <item name="GL_POLYGON_BIT"><value>0x00000008</value></item>
+ <item name="GL_POLYGON_STIPPLE_BIT"><value>0x00000010</value></item>
+ <item name="GL_PIXEL_MODE_BIT"><value>0x00000020</value></item>
+ <item name="GL_LIGHTING_BIT"><value>0x00000040</value></item>
+ <item name="GL_FOG_BIT"><value>0x00000080</value></item>
+ <item name="GL_DEPTH_BUFFER_BIT"><value>0x00000100</value></item>
+ <item name="GL_ACCUM_BUFFER_BIT"><value>0x00000200</value></item>
+ <item name="GL_STENCIL_BUFFER_BIT"><value>0x00000400</value></item>
+ <item name="GL_VIEWPORT_BIT"><value>0x00000800</value></item>
+ <item name="GL_TRANSFORM_BIT"><value>0x00001000</value></item>
+ <item name="GL_ENABLE_BIT"><value>0x00002000</value></item>
+ <item name="GL_COLOR_BUFFER_BIT"><value>0x00004000</value></item>
+ <item name="GL_HINT_BIT"><value>0x00008000</value></item>
+ <item name="GL_EVAL_BIT"><value>0x00010000</value></item>
+ <item name="GL_LIST_BIT"><value>0x00020000</value></item>
+ <item name="GL_TEXTURE_BIT"><value>0x00040000</value></item>
+ <item name="GL_SCISSOR_BIT"><value>0x00080000</value></item>
+ <item name="GL_ALL_ATTRIB_BITS"><value>0x000ffffff</value></item>
+ </enum>
+
+ <request name="SwapBuffers" opcode="11">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="glx:DRAWABLE" name="drawable" />
+ </request>
+
+ <request name="UseXFont" opcode="12">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="FONT" name="font" />
+ <field type="CARD32" name="first" />
+ <field type="CARD32" name="count" />
+ <field type="CARD32" name="list_base" />
+ </request>
+
+ <request name="CreateGLXPixmap" opcode="13">
+ <field type="CARD32" name="screen" />
+ <field type="VISUALID" name="visual" />
+ <field type="xproto:PIXMAP" name="pixmap" />
+ <field type="glx:PIXMAP" name="glx_pixmap" />
+ </request>
+
+
+ <request name="GetVisualConfigs" opcode="14">
+ <field type="CARD32" name="screen" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num_visuals" />
+ <field type="CARD32" name="num_properties" />
+ <pad bytes="16" />
+ <list type="CARD32" name="property_list" />
+ </reply>
+ </request>
+
+ <request name="DestroyGLXPixmap" opcode="15">
+ <field type="glx:PIXMAP" name="glx_pixmap" />
+ </request>
+
+ <!--
+ Context tag is not in the proto, should be part of the list of bytes
+ but every VendorPrivate and VendorPrivateWithReply request uses them
+ so it is safe to put them in. That's how Mesa does it.
+ -->
+ <request name="VendorPrivate" opcode="16">
+ <field type="CARD32" name="vendor_code" />
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <list type="BYTE" name="data" />
+ </request>
+
+ <request name="VendorPrivateWithReply" opcode="17">
+ <field type="CARD32" name="vendor_code" />
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <list type="BYTE" name="data" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="retval" />
+ <list type="BYTE" name="data1">
+ <value>24</value>
+ </list>
+ <list type="BYTE" name="data2" />
+ </reply>
+ </request>
+
+ <request name="QueryExtensionsString" opcode="18">
+ <field type="CARD32" name="screen" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <pad bytes="16" />
+ </reply>
+ </request>
+
+ <request name="QueryServerString" opcode="19">
+ <field type="CARD32" name="screen" />
+ <field type="CARD32" name="name" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="str_len" />
+ <pad bytes="16" />
+ <list type="CARD8" name="string">
+ <fieldref>str_len</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="ClientInfo" opcode="20">
+ <field type="CARD32" name="major_version" />
+ <field type="CARD32" name="minor_version" />
+ <field type="CARD32" name="str_len" />
+ <list type="CARD8" name="string">
+ <fieldref>str_len</fieldref>
+ </list>
+ </request>
+
+ <!-- Start of GLX 1.3 Requests -->
+
+ <request name="GetFBConfigs" opcode="21">
+ <field type="CARD32" name="screen" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num_FB_configs" />
+ <field type="CARD32" name="num_properties" />
+ <pad bytes="16" />
+ <!--
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="value_mask"
+ value-list-name="value_list" />
+ -->
+ <list type="CARD32" name="property_list" />
+ </reply>
+ </request>
+
+ <request name="CreatePixmap" opcode="22">
+ <field type="CARD32" name="screen" />
+ <field type="CARD32" name="fbconfig" />
+ <field type="xproto:PIXMAP" name="pixmap" />
+ <field type="glx:PIXMAP" name="glx_pixmap" />
+ <field type="CARD32" name="num_attribs" />
+ </request>
+
+ <request name="DestroyPixmap" opcode="23">
+ <field type="glx:PIXMAP" name="glx_pixmap" />
+ </request>
+
+ <request name="CreateNewContext" opcode="24">
+ <field type="glx:CONTEXT" name="context" />
+ <field type="CARD32" name="fbconfig" />
+ <field type="SCREEN" name="screen" />
+ <field type="CARD32" name="render_type" />
+ <field type="CARD32" name="share_list" />
+ <field type="BOOL" name="is_direct" />
+ <field type="CARD8" name="reserved1" />
+ <field type="CARD16" name="reserved2" />
+ </request>
+
+ <request name="QueryContext" opcode="25">
+ <field type="glx:CONTEXT" name="context" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num_attributes"/>
+ <pad bytes="20" />
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="value_mask"
+ value-list-name="value_list" />
+ </reply>
+ </request>
+
+ <request name="MakeContextCurrent" opcode="26">
+ <field type="CONTEXT_TAG" name="old_context_tag" />
+ <field type="glx:DRAWABLE" name="drawable" />
+ <field type="glx:DRAWABLE" name="read_drawable" />
+ <field type="glx:CONTEXT" name="context" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <pad bytes="20" />
+ </reply>
+ </request>
+
+ <request name="CreatePbuffer" opcode="27">
+ <field type="SCREEN" name="screen" />
+ <field type="FBCONFIG" name="fbconfig" />
+ <field type="PBUFFER" name="pbuffer" />
+ <field type="CARD32" name="num_attribs" />
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="value_mask"
+ value-list-name="value_list" />
+ </request>
+
+ <request name="DestroyPbuffer" opcode="28">
+ <field type="PBUFFER" name="pbuffer" />
+ </request>
+
+ <request name="GetDrawableAttributes" opcode="29">
+ <field type="glx:DRAWABLE" name="drawable" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num_attribs" />
+ <pad bytes="20" />
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="value_mask"
+ value-list-name="value_list" />
+ </reply>
+ </request>
+
+ <request name="ChangeDrawableAttributes" opcode="30">
+ <field type="glx:DRAWABLE" name="drawable" />
+ <field type="CARD32" name="num_attribs" />
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="value_mask"
+ value-list-name="value_list" />
+ </request>
+
+ <request name="CreateWindow" opcode="31">
+ <field type="SCREEN" name="screen" />
+ <field type="FBCONFIG" name="fbconfig" />
+ <field type="xproto:WINDOW" name="window" />
+ <field type="glx:WINDOW" name="glx_window" />
+ <field type="CARD32" name="num_attribs" />
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="value_mask"
+ value-list-name="value_list" />
+ </request>
+
+ <request name="DeleteWindow" opcode="32">
+ <field type="glx:WINDOW" name="glxwindow" />
+ </request>
+
+ <!-- Requests for GL Non-rendering Commands (single ops) -->
+
+ <request name="NewList" opcode="101">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="list" />
+ <field type="CARD32" name="mode" />
+ </request>
+
+ <request name="EndList" opcode="102">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ </request>
+
+ <request name="DeleteLists" opcode="103">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="list" />
+ <field type="INT32" name="range" />
+ </request>
+
+ <request name="GenLists" opcode="104">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="INT32" name="range" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="ret_val" />
+ </reply>
+ </request>
+
+ <request name="FeedbackBuffer" opcode="105">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="INT32" name="size" />
+ <field type="INT32" name="type" />
+ </request>
+
+ <request name="SelectBuffer" opcode="106">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="INT32" name="size" />
+ <!-- the reply is actually returned in the data
+ of the next RenderMode request -->
+ </request>
+
+
+ <request name="RenderMode" opcode="107">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="mode" />
+ <!--
+ This reply is only if RM was previously feedback/selection.
+ If it was in feedback mode then data is FLOAT32.
+ If previously in render mode there is no reply.
+ -->
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="ret_val" />
+ <field type="CARD32" name="n" />
+ <field type="CARD32" name="new_mode" />
+ <pad bytes="12" />
+ <list type="CARD32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <enum name="RM">
+ <item name="GL_RENDER"><value>0x1C00</value></item>
+ <item name="GL_FEEDBACK"><value>0x1C01</value></item>
+ <item name="GL_SELECT"><value>0x1C02</value></item>
+ </enum>
+
+ <request name="Finish" opcode="108">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <reply>
+ <pad bytes="1" />
+ </reply>
+ </request>
+
+ <request name="PixelStoref" opcode="109">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="pname" />
+ <field type="FLOAT32" name="datum" />
+ </request>
+
+ <request name="PixelStorei" opcode="110">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="pname" />
+ <field type="INT32" name="datum" />
+ </request>
+
+ <request name="ReadPixels" opcode="111">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="INT32" name="x" />
+ <field type="INT32" name="y" />
+ <field type="INT32" name="width" />
+ <field type="INT32" name="height" />
+ <field type="CARD32" name="format" />
+ <field type="CARD32" name="type" />
+ <field type="BOOL" name="swap_bytes" />
+ <field type="BOOL" name="lsb_first" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="24" />
+ <list type="BYTE" name="data" />
+ </reply>
+ </request>
+
+ <!-- FIXME:
+ All the Get* functions can return different stuff for replies.
+ Hopefully xcb will support multiple reply structures at some point
+ but for now... grrrr
+ Starts on page 58/180
+ -->
+ <request name="GetBooleanv" opcode="112">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="INT32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="BOOL" name="datum" />
+ <pad bytes="15" />
+ <list type="BOOL" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetClipPlane" opcode="113">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="INT32" name="plane" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="24" />
+ <list type="FLOAT64" name="data" />
+ </reply>
+ </request>
+
+ <request name="GetDoublev" opcode="114">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT64" name="datum" />
+ <pad bytes="8" />
+ <list type="FLOAT64" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetError" opcode="115">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <reply>
+ <pad bytes="1" />
+ <field type="INT32" name="error" />
+ </reply>
+ </request>
+
+ <request name="GetFloatv" opcode="116">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetIntegerv" opcode="117">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetLightfv" opcode="118">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="light" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetLightiv" opcode="119">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="light" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetMapdv" opcode="120">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="query" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT64" name="datum" />
+ <pad bytes="8" />
+ <list type="FLOAT64" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetMapfv" opcode="121">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="query" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetMapiv" opcode="122">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="query" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetMaterialfv" opcode="123">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="face" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetMaterialiv" opcode="124">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="face" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetPixelMapfv" opcode="125">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="map" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetPixelMapuiv" opcode="126">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="map" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="CARD32" name="datum" />
+ <pad bytes="12" />
+ <list type="CARD32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetPixelMapusv" opcode="127">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="map" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="CARD16" name="datum" />
+ <pad bytes="16" />
+ <list type="CARD16" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetPolygonStipple" opcode="128">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="BOOL" name="lsb_first" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="24" />
+ <list type="BYTE" name="data" />
+ </reply>
+ </request>
+
+
+ <request name="GetString" opcode="129">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="name" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <pad bytes="16" />
+ <list type="CARD8" name="string">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetTexEnvfv" opcode="130">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetTexEnviv" opcode="131">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetTexGendv" opcode="132">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="coord" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT64" name="datum" />
+ <pad bytes="8" />
+ <list type="FLOAT64" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetTexGenfv" opcode="133">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="coord" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetTexGeniv" opcode="134">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="coord" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetTexImage" opcode="135">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="INT32" name="level" />
+ <field type="CARD32" name="format" />
+ <field type="CARD32" name="type" />
+ <field type="BOOL" name="swap_bytes" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="8" />
+ <field type="INT32" name="width" />
+ <field type="INT32" name="height" />
+ <field type="INT32" name="depth" />
+ <pad bytes="4" />
+ <list type="BYTE" name="data" />
+ </reply>
+ </request>
+
+
+ <request name="GetTexParameterfv" opcode="136">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetTexParameteriv" opcode="137">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetTexLevelParameterfv" opcode="138">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="INT32" name="level" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetTexLevelParameteriv" opcode="139">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="INT32" name="level" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="IsList" opcode="141" >
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="list" />
+ <reply>
+ <pad bytes="1" />
+ <field type="BOOL32" name="ret_val" />
+ </reply>
+ </request>
+
+ <request name="Flush" opcode="142">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ </request>
+
+ <request name="AreTexturesResident" opcode="143">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="INT32" name="n" />
+ <list type="CARD32" name="textures">
+ <fieldref>n</fieldref>
+ </list>
+ <reply>
+ <pad bytes="1" />
+ <field type="BOOL32" name="ret_val" />
+ <pad bytes="20" />
+ <list type="BOOL" name="data" />
+ </reply>
+ </request>
+
+ <request name="DeleteTextures" opcode="144">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="INT32" name="n" />
+ <list type="CARD32" name="textures">
+ <fieldref>n</fieldref>
+ </list>
+ </request>
+
+ <request name="GenTextures" opcode="145">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="INT32" name="n" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="24" />
+ <list type="CARD32" name="data" />
+ </reply>
+ </request>
+
+ <request name="IsTexture" opcode="146">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="texture" />
+ <reply>
+ <pad bytes="1" />
+ <field type="BOOL32" name="ret_val" />
+ </reply>
+ </request>
+
+ <request name="GetColorTable" opcode="147">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="format" />
+ <field type="CARD32" name="type" />
+ <field type="BOOL" name="swap_bytes" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="8" />
+ <field type="INT32" name="width" />
+ <pad bytes="12" />
+ <list type="BYTE" name="data" />
+ </reply>
+ </request>
+
+ <request name="GetColorTableParameterfv" opcode="148">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetColorTableParameteriv" opcode="149">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetConvolutionFilter" opcode="150">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="format" />
+ <field type="CARD32" name="type" />
+ <field type="BOOL" name="swap_bytes" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="8" />
+ <field type="INT32" name="width" />
+ <field type="INT32" name="height" />
+ <pad bytes="8" />
+ <list type="BYTE" name="data" />
+ </reply>
+ </request>
+
+
+ <request name="GetConvolutionParameterfv" opcode="151">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetConvolutionParameteriv" opcode="152">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetSeparableFilter" opcode="153">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="format" />
+ <field type="CARD32" name="type" />
+ <field type="BOOL" name="swap_bytes" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="8" />
+ <field type="INT32" name="row_w" />
+ <field type="INT32" name="col_h" />
+ <pad bytes="8" />
+ <list type="BYTE" name="rows_and_cols" />
+ </reply>
+ </request>
+
+ <request name="GetHistogram" opcode="154">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="format" />
+ <field type="CARD32" name="type" />
+ <field type="BOOL" name="swap_bytes" />
+ <field type="BOOL" name="reset" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="8" />
+ <field type="INT32" name="width" />
+ <pad bytes="12" />
+ <list type="BYTE" name="data" />
+ </reply>
+ </request>
+
+
+ <request name="GetHistogramParameterfv" opcode="155">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetHistogramParameteriv" opcode="156">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetMinmax" opcode="157">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="format" />
+ <field type="CARD32" name="type" />
+ <field type="BOOL" name="swap_bytes" />
+ <field type="BOOL" name="reset" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="24" />
+ <list type="BYTE" name="data" />
+ </reply>
+ </request>
+
+ <request name="GetMinmaxParameterfv" opcode="158">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="FLOAT32" name="datum" />
+ <pad bytes="12" />
+ <list type="FLOAT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetMinmaxParameteriv" opcode="159">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <!--
+ GLX Extensions
+
+ * XXX: So far only define non-rendering commands.
+ * Only those extensions that affect the GLX wire protocol are listed.
+ -->
+
+ <!--
+ GL_ARB_texture_compression
+ http://oss.sgi.com/projects/ogl-sample/registry/ARB/texture_compression.txt
+ -->
+ <request name="GetCompressedTexImageARB" opcode="160">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="INT32" name="level" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="8" />
+ <field type="INT32" name="size" />
+ <pad bytes="12" />
+ <list type="BYTE" name="data" />
+ </reply>
+ </request>
+
+
+ <!--
+ GL_ARB_occlusion_query
+ http://oss.sgi.com/projects/ogl-sample/registry/ARB/occlusion_query.txt
+ -->
+
+ <request name="DeleteQueriesARB" opcode="161">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="INT32" name="n" />
+ <list type="CARD32" name="ids">
+ <fieldref>n</fieldref>
+ </list>
+ </request>
+
+ <request name="GenQueriesARB" opcode="162">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="INT32" name="n" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="24" />
+ <list type="CARD32" name="data" />
+ </reply>
+ </request>
+
+ <request name="IsQueryARB" opcode="163">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="id" />
+ <reply>
+ <pad bytes="1" />
+ <field type="BOOL32" name="ret_val" />
+ </reply>
+ </request>
+
+ <request name="GetQueryivARB" opcode="164">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="target" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetQueryObjectivARB" opcode="165">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="id" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="INT32" name="datum" />
+ <pad bytes="12" />
+ <list type="INT32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetQueryObjectuivARB" opcode="166">
+ <field type="CONTEXT_TAG" name="context_tag" />
+ <field type="CARD32" name="id" />
+ <field type="CARD32" name="pname" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="4" />
+ <field type="CARD32" name="n" />
+ <field type="CARD32" name="datum" />
+ <pad bytes="12" />
+ <list type="CARD32" name="data">
+ <fieldref>n</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <!--
+ GL_ARB_vertex_program
+ http://oss.sgi.com/projects/ogl-sample/registry/ARB/vertex_program.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_ARB_fragment_program
+ http://oss.sgi.com/projects/ogl-sample/registry/ARB/fragment_program.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_SGIS_texture_filter4
+ http://oss.sgi.com/projects/ogl-sample/registry/SGIS/texture_filter4.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_EXT_histogram
+ http://oss.sgi.com/projects/ogl-sample/registry/EXT/histogram.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_EXT_convolution
+ http://oss.sgi.com/projects/ogl-sample/registry/EXT/convolution.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_SGI_color_table
+ http://oss.sgi.com/projects/ogl-sample/registry/SGI/color_table.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_EXT_texture_object
+ http://oss.sgi.com/projects/ogl-sample/registry/EXT/texture_object.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_SGIS_detail_texture
+ http://oss.sgi.com/projects/ogl-sample/registry/SGIS/detail_texture.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_SGIS_sharpen_texture
+ http://oss.sgi.com/projects/ogl-sample/registry/SGIS/sharpen_texture.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_SGI_make_current_read
+ http://oss.sgi.com/projects/ogl-sample/registry/SGI/make_current_read.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_EXT_import_context
+ http://oss.sgi.com/projects/ogl-sample/registry/EXT/import_context.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_SGIX_fbconfig
+ http://oss.sgi.com/projects/ogl-sample/registry/SGIX/fbconfig.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_SGIX_pbuffer
+ http://oss.sgi.com/projects/ogl-sample/registry/SGIX/pbuffer.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_EXT_pixel_transform
+ http://oss.sgi.com/projects/ogl-sample/registry/EXT/pixel_transform.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_NV_register_combiners
+ http://oss.sgi.com/projects/ogl-sample/registry/NV/register_combiners.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_NV_fence
+ http://oss.sgi.com/projects/ogl-sample/registry/NV/fence.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_NV_register_combiners2
+ http://oss.sgi.com/projects/ogl-sample/registry/NV/register_combiners2.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_NV_vertex_program
+ http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_program.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_NV_vertex_program
+ http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_program.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_NV_occlusion_query
+ http://oss.sgi.com/projects/ogl-sample/registry/NV/occlusion_query.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_NV_fragment_program
+ http://oss.sgi.com/projects/ogl-sample/registry/NV/fragment_program.txt
+ XXX: Need to write up vops
+ -->
+
+ <!--
+ GL_OES_single_precision
+ http://oss.sgi.com/projects/ogl-sample/registry/OES/single_precision.txt
+ XXX: Need to write up vops
+ -->
+
+</xcb>
diff --git a/src/randr.xml b/src/randr.xml
new file mode 100644
index 0000000..5c0ccdf
--- /dev/null
+++ b/src/randr.xml
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2005 Jeremy Kolb.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+
+<xcb header="randr" extension-xname="RANDR" extension-name="RandR">
+ <!-- Implements version 1.1 of RANDR -->
+
+ <import>xproto</import>
+
+ <enum name="Rotation">
+ <item name="Rotate_0"><value>1</value></item>
+ <item name="Rotate_90"><value>2</value></item>
+ <item name="Rotate_180"><value>4</value></item>
+ <item name="Rotate_270"><value>8</value></item>
+ <item name="Reflect_X"><value>16</value></item>
+ <item name="Reflect_Y"><value>32</value></item>
+ </enum>
+
+ <struct name="ScreenSize">
+ <field type="INT16" name="width" />
+ <field type="INT16" name="height" />
+ <field type="INT16" name="mwidth" />
+ <field type="INT16" name="mheight" />
+ </struct>
+
+ <struct name="RefreshRates">
+ <field type="CARD16" name="nRates" />
+ <list type="CARD16" name="rates">
+ <fieldref>nRates</fieldref>
+ </list>
+ </struct>
+
+ <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" />
+ <pad bytes="16" />
+ </reply>
+ </request>
+
+ <!-- This is for the 1.1 version request. I don't believe we need to specify a 1.0 request
+ as few things used randr 1.0. The only difference is the removal of refresh and padding I think.
+ BEWARE: the docs lie!
+ -->
+ <request name="SetScreenConfig" opcode="2">
+ <field type="WINDOW" name="drawable" />
+ <field type="CARD32" name="timestamp" />
+ <field type="CARD32" name="config_timestamp" />
+ <field type="CARD16" name="sizeID" />
+ <field type="INT16" name="rotation" />
+ <field type="CARD16" name="refresh" />
+ <pad bytes="2" />
+ <reply>
+ <field type="CARD8" name="status" />
+ <field type="CARD32" name="timestamp" />
+ <field type="CARD32" name="config_timestamp" />
+ <field type="WINDOW" name="root" />
+ <field type="CARD16" name="subpixel_order" />
+ <pad bytes="10" />
+ </reply>
+ </request>
+
+ <enum name="SetConfig">
+ <item name="Success"><value>0</value></item>
+ <item name="InvalidConfigTime"><value>1</value></item>
+ <item name="InvalidTime"><value>2</value></item>
+ <item name="Failed"><value>3</value></item>
+ </enum>
+
+ <request name="SelectInput" opcode="4">
+ <field type="WINDOW" name="window" />
+ <field type="CARD16" name="enable" />
+ <pad bytes="2" />
+ </request>
+
+ <!--
+ I think this is correct. It works. though I believe nInfo is a bit high...
+ -->
+ <request name="GetScreenInfo" opcode="5">
+ <field type="WINDOW" name="window" />
+ <reply>
+ <field type="CARD8" name="rotations" />
+ <field type="WINDOW" name="root" />
+ <field type="CARD32" name="timestamp" />
+ <field type="CARD32" name="config_timestamp" />
+ <field type="CARD16" name="nSizes" />
+ <field type="CARD16" name="sizeID" />
+ <field type="INT16" name="rotation" />
+ <field type="CARD16" name="rate" />
+ <field type="CARD16" name="nInfo" />
+ <pad bytes="2" />
+ <list type="ScreenSize" name="sizes">
+ <fieldref>nSizes</fieldref>
+ </list>
+ <list type="RefreshRates" name="rates">
+ <op op="-">
+ <fieldref>nInfo</fieldref>
+ <fieldref>nSizes</fieldref>
+ </op>
+ </list>
+ </reply>
+ </request>
+
+ <enum name="SM" >
+ <item name="ScreenChangeNotify"><value>1</value></item>
+ </enum>
+
+ <event name="ScreenChangeNotify" number="0">
+ <field type="CARD8" name="rotation" />
+ <field type="CARD32" name="timestamp" />
+ <field type="CARD32" name="config_timestamp" />
+ <field type="WINDOW" name="root" />
+ <field type="WINDOW" name="request_window" />
+ <field type="CARD16" name="sizeID" />
+ <field type="CARD16" name="subpixel_order" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <field type="CARD16" name="mwidth" />
+ <field type="CARD16" name="mheight" />
+ </event>
+
+</xcb>
diff --git a/src/record.xml b/src/record.xml
new file mode 100644
index 0000000..09729ad
--- /dev/null
+++ b/src/record.xml
@@ -0,0 +1,172 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2005 Jeremy Kolb.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person ob/Sintaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+
+<xcb header="record" extension-xname="RECORD" extension-name="Record">
+
+ <!-- Types -->
+ <xidtype name="CONTEXT" />
+
+ <struct name="Range8">
+ <field type="CARD8" name="first" />
+ <field type="CARD8" name="last" />
+ </struct>
+
+ <struct name="Range16">
+ <field type="CARD16" name="first" />
+ <field type="CARD16" name="last" />
+ </struct>
+
+ <struct name="ExtRange">
+ <field type="Range8" name="major" />
+ <field type="Range16" name="minor" />
+ </struct>
+
+ <struct name="Range">
+ <field type="Range8" name="core_requests" />
+ <field type="Range8" name="core_replies" />
+ <field type="ExtRange" name="ext_requests" />
+ <field type="ExtRange" name="ext_replies" />
+ <field type="Range8" name="delivered_events" />
+ <field type="Range8" name="device_events" />
+ <field type="Range8" name="errors" />
+ <field type="BOOL" name="client_started" />
+ <field type="BOOL" name="client_died" />
+ </struct>
+
+ <typedef oldname="CARD8" newname="ElementHeader" />
+ <enum name="HType">
+ <item name="FromServerTime"><value>0x01</value></item>
+ <item name="FromClientTime"><value>0x02</value></item>
+ <item name="FromClientSequence"><value>0x04</value></item>
+ </enum>
+
+ <typedef oldname="CARD32" newname="ClientSpec" />
+ <enum name="CS">
+ <item name="CurrentClients"><value>1</value></item>
+ <item name="FutureClients"><value>2</value></item>
+ <item name="AllClients"><value>3</value></item>
+ </enum>
+
+ <struct name="ClientInfo">
+ <field type="ClientSpec" name="client_resource" />
+ <field type="CARD32" name="num_ranges" />
+ <list type="Range" name="ranges">
+ <fieldref>num_ranges</fieldref>
+ </list>
+ </struct>
+
+ <!-- Errors -->
+ <error name="BadContext" number="0">
+ <field type="CARD32" name="invalid_record" />
+ </error>
+
+ <!-- Requests -->
+ <request name="QueryVersion" opcode="0">
+ <field type="CARD16" name="major_version" />
+ <field type="CARD16" name="minor_version" />
+ <reply>
+ <pad bytes="1"/>
+ <field type="CARD16" name="major_version" />
+ <field type="CARD16" name="minor_version" />
+ </reply>
+ </request>
+
+ <request name="CreateContext" opcode="1">
+ <field type="record:CONTEXT" name="context" />
+ <field type="ElementHeader" name="element_header" />
+ <pad bytes="3" />
+ <field type="CARD32" name="num_client_specs" />
+ <field type="CARD32" name="num_ranges" />
+ <list type="ClientSpec" name="client_specs">
+ <fieldref>num_client_specs</fieldref>
+ </list>
+ <list type="Range" name="ranges">
+ <fieldref>num_ranges</fieldref>
+ </list>
+ </request>
+
+ <request name="RegisterClients" opcode="2">
+ <field type="record:CONTEXT" name="context" />
+ <field type="ElementHeader" name="element_header" />
+ <pad bytes="3" />
+ <field type="CARD32" name="num_client_specs" />
+ <field type="CARD32" name="num_ranges" />
+ <list type="ClientSpec" name="client_specs">
+ <fieldref>num_client_specs</fieldref>
+ </list>
+ <list type="Range" name="ranges">
+ <fieldref>num_ranges</fieldref>
+ </list>
+ </request>
+
+ <request name="UnregisterClients" opcode="3">
+ <field type="record:CONTEXT" name="context" />
+ <field type="CARD32" name="num_client_specs" />
+ <list type="ClientSpec" name="client_specs">
+ <fieldref>num_client_specs</fieldref>
+ </list>
+ </request>
+
+ <request name="GetContext" opcode="4">
+ <field type="record:CONTEXT" name="context" />
+ <reply>
+ <field type="BOOL" name="enabled" />
+ <field type="ElementHeader" name="element_header" />
+ <pad bytes="3" />
+ <field type="CARD32" name="num_intercepted_clients" />
+ <pad bytes="16" />
+ <list type="ClientInfo" name="intercepted_clients">
+ <fieldref>num_intercepted_clients</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="EnableContext" opcode="5">
+ <field type="record:CONTEXT" name="context" />
+ <reply>
+ <field type="CARD8" name="category" />
+ <field type="ElementHeader" name="element_header" />
+ <field type="BOOL" name="client_swapped" />
+ <pad bytes="2" />
+ <field type="CARD32" name="xid_base" />
+ <field type="CARD32" name="server_time" />
+ <field type="CARD32" name="rec_sequence_num" />
+ <pad bytes="8" />
+ <list type="BYTE" name="data" />
+ </reply>
+ </request>
+
+ <request name="DisableContext" opcode="6">
+ <field type="record:CONTEXT" name="context" />
+ </request>
+
+ <request name="FreeContext" opcode="7">
+ <field type="record:CONTEXT" name="context" />
+ </request>
+
+</xcb>
diff --git a/src/render.xml b/src/render.xml
new file mode 100644
index 0000000..88e9a40
--- /dev/null
+++ b/src/render.xml
@@ -0,0 +1,544 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2002-2004 Carl D. Worth, Jamey Sharp, Bart Massey, Josh Triplett
+All Rights Reserved. See the file COPYING in this directory
+for licensing information.
+-->
+<xcb header="render" extension-xname="RENDER" extension-name="Render">
+ <!-- supports version 0.10 -->
+
+ <import>xproto</import>
+
+ <enum name="PictType">
+ <item name="Indexed" />
+ <item name="Direct" />
+ </enum>
+
+ <!-- Disjoint* and Conjoint* are new in version 0.2 -->
+ <enum name="PictOp">
+ <item name="Clear" />
+ <item name="Src" />
+ <item name="Dst" />
+ <item name="Over" />
+ <item name="OverReverse" />
+ <item name="In" />
+ <item name="InReverse" />
+ <item name="Out" />
+ <item name="OutReverse" />
+ <item name="Atop" />
+ <item name="AtopReverse" />
+ <item name="Xor" />
+ <item name="Add" />
+ <item name="Saturate" />
+
+ <item name="DisjointClear"><value>0x10</value></item>
+ <item name="DisjointSrc" />
+ <item name="DisjointDst" />
+ <item name="DisjointOver" />
+ <item name="DisjointOverReverse" />
+ <item name="DisjointIn" />
+ <item name="DisjointInReverse" />
+ <item name="DisjointOut" />
+ <item name="DisjointOutReverse" />
+ <item name="DisjointAtop" />
+ <item name="DisjointAtopReverse" />
+ <item name="DisjointXor" />
+
+ <item name="ConjointClear"><value>0x20</value></item>
+ <item name="ConjointSrc" />
+ <item name="ConjointDst" />
+ <item name="ConjointOver" />
+ <item name="ConjointOverReverse" />
+ <item name="ConjointIn" />
+ <item name="ConjointInReverse" />
+ <item name="ConjointOut" />
+ <item name="ConjointOutReverse" />
+ <item name="ConjointAtop" />
+ <item name="ConjointAtopReverse" />
+ <item name="ConjointXor" />
+ </enum>
+
+ <enum name="PolyEdge">
+ <item name="Sharp" />
+ <item name="Smooth" />
+ </enum>
+
+ <enum name="PolyMode">
+ <item name="Precise" />
+ <item name="Imprecise" />
+ </enum>
+
+ <enum name="CP">
+ <item name="Repeat"> <bit>0</bit></item>
+ <item name="AlphaMap"> <bit>1</bit></item>
+ <item name="AlphaXOrigin"> <bit>2</bit></item>
+ <item name="AlphaYOrigin"> <bit>3</bit></item>
+ <item name="ClipXOrigin"> <bit>4</bit></item>
+ <item name="ClipYOrigin"> <bit>5</bit></item>
+ <item name="ClipMask"> <bit>6</bit></item>
+ <item name="GraphicsExposure"><bit>7</bit></item>
+ <item name="SubwindowMode"> <bit>8</bit></item>
+ <item name="PolyEdge"> <bit>9</bit></item>
+ <item name="PolyMode"> <bit>10</bit></item>
+ <item name="Dither"> <bit>11</bit></item>
+ <item name="ComponentAlpha"> <bit>12</bit></item>
+ </enum>
+
+ <enum name="SubPixel">
+ <item name="Unknown" />
+ <item name="HorizontalRGB" />
+ <item name="HorizontalBGR" />
+ <item name="VerticalRGB" />
+ <item name="VerticalBGR" />
+ <item name="None" />
+ </enum>
+
+ <!-- Extended repeat attributes introduced in 0.10 -->
+ <enum name="Repeat">
+ <item name="None" />
+ <item name="Normal" />
+ <item name="Pad" />
+ <item name="Reflect" />
+ </enum>
+
+ <typedef oldname="CARD32" newname="GLYPH" />
+ <xidtype name="GLYPHSET" />
+
+ <xidtype name="PICTURE" />
+ <xidtype name="PICTFORMAT" />
+
+ <typedef oldname="INT32" newname="FIXED" />
+
+ <error name="PictFormat" number="0" />
+ <error name="Picture" number="1" />
+ <error name="PictOp" number="2" />
+ <error name="GlyphSet" number="3" />
+ <error name="Glyph" number="4" />
+
+ <struct name="DIRECTFORMAT">
+ <field type="CARD16" name="red_shift" />
+ <field type="CARD16" name="red_mask" />
+ <field type="CARD16" name="green_shift" />
+ <field type="CARD16" name="green_mask" />
+ <field type="CARD16" name="blue_shift" />
+ <field type="CARD16" name="blue_mask" />
+ <field type="CARD16" name="alpha_shift" />
+ <field type="CARD16" name="alpha_mask" />
+ </struct>
+
+ <struct name="PICTFORMINFO">
+ <field type="PICTFORMAT" name="id" />
+ <field type="CARD8" name="type" />
+ <field type="CARD8" name="depth" />
+ <pad bytes="2" />
+ <field type="DIRECTFORMAT" name="direct" />
+ <field type="COLORMAP" name="colormap" />
+ </struct>
+
+ <struct name="PICTVISUAL">
+ <field type="VISUALID" name="visual" />
+ <field type="PICTFORMAT" name="format" />
+ </struct>
+
+ <struct name="PICTDEPTH">
+ <field type="CARD8" name="depth" />
+ <pad bytes="1" />
+ <field type="CARD16" name="num_visuals" />
+ <pad bytes="4" />
+ <list type="PICTVISUAL" name="visuals">
+ <fieldref>num_visuals</fieldref>
+ </list>
+ </struct>
+
+ <struct name="PICTSCREEN">
+ <field type="CARD32" name="num_depths" />
+ <field type="PICTFORMAT" name="fallback" />
+ <list type="PICTDEPTH" name="depths">
+ <fieldref>num_depths</fieldref>
+ </list>
+ </struct>
+
+ <struct name="INDEXVALUE">
+ <field type="CARD32" name="pixel" />
+ <field type="CARD16" name="red" />
+ <field type="CARD16" name="green" />
+ <field type="CARD16" name="blue" />
+ <field type="CARD16" name="alpha" />
+ </struct>
+
+ <struct name="COLOR">
+ <field type="CARD16" name="red" />
+ <field type="CARD16" name="green" />
+ <field type="CARD16" name="blue" />
+ <field type="CARD16" name="alpha" />
+ </struct>
+
+ <struct name="POINTFIX">
+ <field type="FIXED" name="x" />
+ <field type="FIXED" name="y" />
+ </struct>
+
+ <struct name="LINEFIX">
+ <field type="POINTFIX" name="p1" />
+ <field type="POINTFIX" name="p2" />
+ </struct>
+
+ <struct name="TRIANGLE">
+ <field type="POINTFIX" name="p1" />
+ <field type="POINTFIX" name="p2" />
+ <field type="POINTFIX" name="p3" />
+ </struct>
+
+ <struct name="TRAPEZOID">
+ <field type="FIXED" name="top" />
+ <field type="FIXED" name="bottom" />
+ <field type="LINEFIX" name="left" />
+ <field type="LINEFIX" name="right" />
+ </struct>
+
+ <struct name="GLYPHINFO">
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <field type="INT16" name="x" />
+ <field type="INT16" name="y" />
+ <field type="INT16" name="x_off" />
+ <field type="INT16" name="y_off" />
+ </struct>
+
+
+ <request name="QueryVersion" opcode="0">
+ <field type="CARD32" name="client_major_version" />
+ <field type="CARD32" name="client_minor_version" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="major_version" />
+ <field type="CARD32" name="minor_version" />
+ <pad bytes="16" />
+ </reply>
+ </request>
+
+ <request name="QueryPictFormats" opcode="1">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num_formats" />
+ <field type="CARD32" name="num_screens" />
+ <field type="CARD32" name="num_depths" />
+ <field type="CARD32" name="num_visuals" />
+ <field type="CARD32" name="num_subpixel" /> <!-- new in version 0.6 -->
+ <pad bytes="4" />
+ <list type="PICTFORMINFO" name="formats">
+ <fieldref>num_formats</fieldref>
+ </list>
+ <list type="PICTSCREEN" name="screens">
+ <fieldref>num_screens</fieldref>
+ </list>
+ <list type="CARD32" name="subpixels">
+ <fieldref>num_subpixel</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <!-- from version 0.7 -->
+ <request name="QueryPictIndexValues" opcode="2">
+ <field type="PICTFORMAT" name="format" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num_values" />
+ <pad bytes="20" />
+ <list type="INDEXVALUE" name="values">
+ <fieldref>num_values</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <!-- opcode 3 reserved for QueryDithers -->
+
+ <request name="CreatePicture" opcode="4">
+ <field type="PICTURE" name="pid" />
+ <field type="DRAWABLE" name="drawable" />
+ <field type="PICTFORMAT" name="format" />
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="value_mask"
+ value-list-name="value_list" />
+ </request>
+
+ <request name="ChangePicture" opcode="5">
+ <field type="PICTURE" name="picture" />
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="value_mask"
+ value-list-name="value_list" />
+ </request>
+
+ <request name="SetPictureClipRectangles" opcode="6">
+ <field type="PICTURE" name="picture" />
+ <field type="INT16" name="clip_x_origin" />
+ <field type="INT16" name="clip_y_origin" />
+ <list type="RECTANGLE" name="rectangles" />
+ </request>
+
+ <request name="FreePicture" opcode="7">
+ <field type="PICTURE" name="picture" />
+ </request>
+
+ <request name="Composite" opcode="8">
+ <field type="CARD8" name="op" />
+ <pad bytes="3" />
+ <field type="PICTURE" name="src" />
+ <field type="PICTURE" name="mask" />
+ <field type="PICTURE" name="dst" />
+ <field type="INT16" name="src_x" />
+ <field type="INT16" name="src_y" />
+ <field type="INT16" name="mask_x" />
+ <field type="INT16" name="mask_y" />
+ <field type="INT16" name="dst_x" />
+ <field type="INT16" name="dst_y" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ </request>
+
+ <!-- opcode 9 reserved for Scale -->
+
+ <request name="Trapezoids" opcode="10">
+ <field type="CARD8" name="op" />
+ <pad bytes="3" />
+ <field type="PICTURE" name="src" />
+ <field type="PICTURE" name="dst" />
+ <field type="PICTFORMAT" name="mask_format" />
+ <field type="INT16" name="src_x" />
+ <field type="INT16" name="src_y" />
+ <list type="TRAPEZOID" name="traps" />
+ </request>
+
+ <request name="Triangles" opcode="11">
+ <field type="CARD8" name="op" />
+ <pad bytes="3" />
+ <field type="PICTURE" name="src" />
+ <field type="PICTURE" name="dst" />
+ <field type="PICTFORMAT" name="mask_format" />
+ <field type="INT16" name="src_x" />
+ <field type="INT16" name="src_y" />
+ <list type="TRIANGLE" name="triangles" />
+ </request>
+
+ <request name="TriStrip" opcode="12">
+ <field type="CARD8" name="op" />
+ <pad bytes="3" />
+ <field type="PICTURE" name="src" />
+ <field type="PICTURE" name="dst" />
+ <field type="PICTFORMAT" name="mask_format" />
+ <field type="INT16" name="src_x" />
+ <field type="INT16" name="src_y" />
+ <list type="POINTFIX" name="points" />
+ </request>
+
+ <request name="TriFan" opcode="13">
+ <field type="CARD8" name="op" />
+ <pad bytes="3" />
+ <field type="PICTURE" name="src" />
+ <field type="PICTURE" name="dst" />
+ <field type="PICTFORMAT" name="mask_format" />
+ <field type="INT16" name="src_x" />
+ <field type="INT16" name="src_y" />
+ <list type="POINTFIX" name="points" />
+ </request>
+
+ <!-- opcode 14 reserved for ColorTrapezoids -->
+
+ <!-- opcode 15 reserved for ColorTriangles -->
+
+ <!-- opcode 16 reserved for Transform -->
+
+ <request name="CreateGlyphSet" opcode="17">
+ <field type="GLYPHSET" name="gsid" />
+ <field type="PICTFORMAT" name="format" />
+ </request>
+
+ <request name="ReferenceGlyphSet" opcode="18">
+ <field type="GLYPHSET" name="gsid" />
+ <field type="GLYPHSET" name="existing" />
+ </request>
+
+ <request name="FreeGlyphSet" opcode="19">
+ <field type="GLYPHSET" name="glyphset" />
+ </request>
+
+ <request name="AddGlyphs" opcode="20">
+ <field type="GLYPHSET" name="glyphset" />
+ <field type="CARD32" name="glyphs_len" />
+ <list type="CARD32" name="glyphids">
+ <fieldref>glyphs_len</fieldref>
+ </list>
+ <list type="GLYPHINFO" name="glyphs">
+ <fieldref>glyphs_len</fieldref>
+ </list>
+ <list type="BYTE" name="data" />
+ </request>
+
+ <!-- opcode 21 reserved for AddGlyphsFromPicture -->
+
+ <request name="FreeGlyphs" opcode="22">
+ <field type="GLYPHSET" name="glyphset" />
+ <list type="GLYPH" name="glyphs" />
+ </request>
+
+ <request name="CompositeGlyphs8" opcode="23">
+ <field type="CARD8" name="op" />
+ <pad bytes="3" />
+ <field type="PICTURE" name="src" />
+ <field type="PICTURE" name="dst" />
+ <field type="PICTFORMAT" name="mask_format" />
+ <field type="GLYPHSET" name="glyphset" />
+ <field type="INT16" name="src_x" />
+ <field type="INT16" name="src_y" />
+ <list type="BYTE" name="glyphcmds" />
+ </request>
+
+ <request name="CompositeGlyphs16" opcode="24">
+ <field type="CARD8" name="op" />
+ <pad bytes="3" />
+ <field type="PICTURE" name="src" />
+ <field type="PICTURE" name="dst" />
+ <field type="PICTFORMAT" name="mask_format" />
+ <field type="GLYPHSET" name="glyphset" />
+ <field type="INT16" name="src_x" />
+ <field type="INT16" name="src_y" />
+ <list type="BYTE" name="glyphcmds" />
+ </request>
+
+ <request name="CompositeGlyphs32" opcode="25">
+ <field type="CARD8" name="op" />
+ <pad bytes="3" />
+ <field type="PICTURE" name="src" />
+ <field type="PICTURE" name="dst" />
+ <field type="PICTFORMAT" name="mask_format" />
+ <field type="GLYPHSET" name="glyphset" />
+ <field type="INT16" name="src_x" />
+ <field type="INT16" name="src_y" />
+ <list type="BYTE" name="glyphcmds" />
+ </request>
+
+ <!-- new in version 0.1 -->
+
+ <request name="FillRectangles" opcode="26">
+ <field type="CARD8" name="op" />
+ <pad bytes="3" />
+ <field type="PICTURE" name="dst" />
+ <field type="COLOR" name="color" />
+ <list type="RECTANGLE" name="rects" />
+ </request>
+
+ <!-- new in version 0.5 -->
+
+ <request name="CreateCursor" opcode="27">
+ <field type="CURSOR" name="cid" />
+ <field type="PICTURE" name="source" />
+ <field type="CARD16" name="x" />
+ <field type="CARD16" name="y" />
+ </request>
+
+ <!-- new in version 0.6 -->
+
+ <struct name="TRANSFORM">
+ <field type="FIXED" name="matrix11" />
+ <field type="FIXED" name="matrix12" />
+ <field type="FIXED" name="matrix13" />
+ <field type="FIXED" name="matrix21" />
+ <field type="FIXED" name="matrix22" />
+ <field type="FIXED" name="matrix23" />
+ <field type="FIXED" name="matrix31" />
+ <field type="FIXED" name="matrix32" />
+ <field type="FIXED" name="matrix33" />
+ </struct>
+
+ <request name="SetPictureTransform" opcode="28">
+ <field type="PICTURE" name="picture" />
+ <field type="TRANSFORM" name="transform" />
+ </request>
+
+ <request name="QueryFilters" opcode="29">
+ <field type="DRAWABLE" name="drawable" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num_aliases" />
+ <field type="CARD32" name="num_filters" />
+ <pad bytes="16" />
+ <list type="CARD16" name="aliases">
+ <fieldref>num_aliases</fieldref>
+ </list>
+ <list type="STR" name="filters">
+ <fieldref>num_filters</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="SetPictureFilter" opcode="30">
+ <field type="PICTURE" name="picture" />
+ <field type="CARD16" name="filter_len" />
+ <list type="char" name="filter">
+ <fieldref>filter_len</fieldref>
+ </list>
+ <list type="FIXED" name="values" />
+ </request>
+
+ <!-- new in version 0.8 -->
+
+ <struct name="ANIMCURSORELT">
+ <field type="CURSOR" name="cursor" />
+ <field type="CARD32" name="delay" />
+ </struct>
+
+ <request name="CreateAnimCursor" opcode="31">
+ <field type="CURSOR" name="cid" />
+ <list type="ANIMCURSORELT" name="cursors" />
+ </request>
+
+ <!-- new in version 0.9 -->
+
+ <struct name="SPANFIX">
+ <field type="FIXED" name="l" />
+ <field type="FIXED" name="r" />
+ <field type="FIXED" name="y" />
+ </struct>
+
+ <struct name="TRAP">
+ <field type="SPANFIX" name="top" />
+ <field type="SPANFIX" name="bot" />
+ </struct>
+
+ <request name="AddTraps" opcode="32">
+ <field type="PICTURE" name="picture" />
+ <field type="INT16" name="x_off" />
+ <field type="INT16" name="y_off" />
+ <list type="TRAP" name="traps" />
+ </request>
+
+ <!-- new in version 0.10 -->
+
+ <request name="CreateSolidFill" opcode="33">
+ <field type="PICTURE" name="picture" />
+ <field type="COLOR" name="color" />
+ </request>
+
+ <request name="CreateLinearGradient" opcode="34">
+ <field type="PICTURE" name="picture" />
+ <field type="POINTFIX" name="p1" />
+ <field type="POINTFIX" name="p2" />
+ <field type="CARD32" name="num_stops" />
+ </request>
+
+ <request name="CreateRadialGradient" opcode="35">
+ <field type="PICTURE" name="picture" />
+ <field type="POINTFIX" name="inner" />
+ <field type="POINTFIX" name="outer" />
+ <field type="FIXED" name="inner_radius" />
+ <field type="FIXED" name="outer_radius" />
+ <field type="CARD32" name="num_stops" />
+ </request>
+
+ <request name="CreateConicalGradient" opcode="36">
+ <field type="PICTURE" name="picture" />
+ <field type="POINTFIX" name="center" />
+ <field type="FIXED" name="angle" /> <!-- degrees -->
+ <field type="CARD32" name="num_stops" />
+ </request>
+</xcb>
diff --git a/src/res.xml b/src/res.xml
new file mode 100644
index 0000000..eda0cbe
--- /dev/null
+++ b/src/res.xml
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2006 Jeremy Kolb
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+<xcb header="res" extension-xname="X-Resource" extension-name="Res">
+ <struct name="Client">
+ <field type="CARD32" name="resource_base" />
+ <field type="CARD32" name="resource_mask" />
+ </struct>
+
+ <struct name="Type">
+ <field type="CARD32" name="resource_type" />
+ <field type="CARD32" name="count" />
+ </struct>
+
+ <request name="QueryVersion" opcode="0">
+ <field type="CARD8" name="client_major" />
+ <field type="CARD8" name="client_minor" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="server_major" />
+ <field type="CARD16" name="server_minor" />
+ </reply>
+ </request>
+
+ <request name="QueryClients" opcode="1">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num_clients" />
+ <pad bytes="20" />
+ <list type="Client" name="clients">
+ <fieldref>num_clients</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="QueryClientResources" opcode="2">
+ <field type="CARD32" name="xid" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num_types" />
+ <pad bytes="20" />
+ <list type="Type" name="types">
+ <fieldref>num_types</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="QueryClientPixmapBytes" opcode="3">
+ <field type="CARD32" name="xid" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="bytes" />
+ <field type="CARD32" name="bytes_overflow" />
+ </reply>
+ </request>
+</xcb>
diff --git a/src/screensaver.xml b/src/screensaver.xml
new file mode 100644
index 0000000..1a095de
--- /dev/null
+++ b/src/screensaver.xml
@@ -0,0 +1,126 @@
+<!--
+
+Copyright (C) 2005 Vincent Torri.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person ob/Sintaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+<!--
+Screen Saver Extension to the X Protocol
+Draft Standard Version 1.1
+-->
+<xcb header="screensaver" extension-xname="MIT-SCREEN-SAVER" extension-name="ScreenSaver">
+ <!-- Types -->
+
+ <import>xproto</import>
+
+ <enum name="Kind">
+ <item name="Blanked" />
+ <item name="Internal" />
+ <item name="External" />
+ </enum>
+
+ <enum name="Event">
+ <item name="NotifyMask"><bit>0</bit></item>
+ <item name="CycleMask"> <bit>1</bit></item>
+ </enum>
+
+ <enum name="State">
+ <item name="Off" />
+ <item name="On" />
+ <item name="Cycle" />
+ <item name="Disabled" />
+ </enum>
+
+ <!-- Errors -->
+ <!-- Requests -->
+ <request name="QueryVersion" opcode="0">
+ <field type="CARD8" name="client_major_version"/>
+ <field type="CARD8" name="client_minor_version"/>
+ <pad bytes="2"/>
+ <reply>
+ <pad bytes="1"/>
+ <field type="CARD16" name="server_major_version"/>
+ <field type="CARD16" name="server_minor_version"/>
+ <pad bytes="20"/>
+ </reply>
+ </request>
+
+ <request name="QueryInfo" opcode="1">
+ <field type="DRAWABLE" name="drawable"/>
+ <reply>
+ <field type="CARD8" name="state"/>
+ <field type="WINDOW" name="saver_window"/>
+ <field type="CARD32" name="ms_until_server"/>
+ <field type="CARD32" name="ms_since_user_input"/>
+ <field type="CARD32" name="event_mask" />
+ <field type="BYTE" name="kind"/> <!-- enum Kind -->
+ <pad bytes="7"/>
+ </reply>
+ </request>
+
+ <request name="SelectInput" opcode="2">
+ <field type="DRAWABLE" name="drawable"/>
+ <field type="CARD32" name="event_mask" /> <!-- enum Event -->
+ </request>
+
+ <request name="SetAttributes" opcode="3">
+ <field type="DRAWABLE" name="drawable"/>
+ <field type="INT16" name="x"/>
+ <field type="INT16" name="y"/>
+ <field type="CARD16" name="width"/>
+ <field type="CARD16" name="height"/>
+ <field type="CARD16" name="border_width"/>
+ <field type="BYTE" name="class"/> <!-- enum XCBWindowClass -->
+ <field type="CARD8" name="depth"/>
+ <field type="VISUALID" name="visual"/>
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="value_mask"
+ value-list-name="value_list" />
+ </request>
+
+ <request name="UnsetAttributes" opcode="4">
+ <field type="DRAWABLE" name="drawable"/>
+ </request>
+
+ <!-- version 1.1 -->
+ <request name="Suspend" opcode="5">
+ <field type="BOOL" name="suspend" />
+ <pad bytes="3" />
+ </request>
+
+ <!-- Events -->
+
+ <event name="Notify" number="0">
+ <field type="CARD8" name="code"/>
+ <field type="BYTE" name="state"/> <!-- enum State -->
+ <field type="CARD16" name="sequence_number"/>
+ <field type="TIMESTAMP" name="time"/>
+ <field type="WINDOW" name="root"/>
+ <field type="WINDOW" name="window"/>
+ <field type="BYTE" name="kind"/> <!-- enum Kind -->
+ <field type="BOOL" name="forced"/>
+ <pad bytes="14"/>
+ </event>
+
+</xcb>
diff --git a/src/shape.xml b/src/shape.xml
new file mode 100644
index 0000000..36d0652
--- /dev/null
+++ b/src/shape.xml
@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2001-2004 Bart Massey, Jamey Sharp, and Josh Triplett.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+<!-- This file describes version 1.1 of the Shape extension. -->
+<xcb header="shape" extension-xname="SHAPE" extension-name="Shape">
+ <import>xproto</import>
+
+ <typedef oldname="CARD8" newname="OP" />
+ <typedef oldname="CARD8" newname="KIND" />
+
+ <!-- Shape attributes of type OP. -->
+ <enum name="SO">
+ <item name="Set" />
+ <item name="Union" />
+ <item name="Intersect" />
+ <item name="Subtract" />
+ <item name="Invert" />
+ </enum>
+
+ <!-- Shape attributes of type KIND. -->
+ <enum name="SK">
+ <item name="Bounding" />
+ <item name="Clip" />
+ <item name="Input" /> <!-- added in version 1.1 -->
+ </enum>
+
+ <event name="Notify" number="0">
+ <field type="KIND" name="shape_kind" />
+ <field type="WINDOW" name="affected_window" />
+ <field type="INT16" name="extents_x" />
+ <field type="INT16" name="extents_y" />
+ <field type="CARD16" name="extents_width" />
+ <field type="CARD16" name="extents_height" />
+ <field type="TIMESTAMP" name="server_time" />
+ <field type="BOOL" name="shaped" />
+ </event>
+
+ <request name="QueryVersion" opcode="0">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="major_version" />
+ <field type="CARD16" name="minor_version" />
+ </reply>
+ </request>
+
+ <request name="Rectangles" opcode="1">
+ <field type="OP" name="operation" />
+ <field type="KIND" name="destination_kind" />
+ <field type="BYTE" name="ordering" />
+ <pad bytes="1" />
+ <field type="WINDOW" name="destination_window" />
+ <field type="INT16" name="x_offset" />
+ <field type="INT16" name="y_offset" />
+ <list type="RECTANGLE" name="rectangles" />
+ </request>
+
+ <request name="Mask" opcode="2">
+ <field type="OP" name="operation" />
+ <field type="KIND" name="destination_kind" />
+ <pad bytes="2" />
+ <field type="WINDOW" name="destination_window" />
+ <field type="INT16" name="x_offset" />
+ <field type="INT16" name="y_offset" />
+ <field type="PIXMAP" name="source_bitmap" />
+ </request>
+
+ <request name="Combine" opcode="3">
+ <field type="OP" name="operation" />
+ <field type="KIND" name="destination_kind" />
+ <field type="KIND" name="source_kind" />
+ <pad bytes="1" />
+ <field type="WINDOW" name="destination_window" />
+ <field type="INT16" name="x_offset" />
+ <field type="INT16" name="y_offset" />
+ <field type="WINDOW" name="source_window" />
+ </request>
+
+ <request name="Offset" opcode="4">
+ <field type="KIND" name="destination_kind" />
+ <pad bytes="3" />
+ <field type="WINDOW" name="destination_window" />
+ <field type="INT16" name="x_offset" />
+ <field type="INT16" name="y_offset" />
+ </request>
+
+ <request name="QueryExtents" opcode="5">
+ <field type="WINDOW" name="destination_window" />
+ <reply>
+ <pad bytes="1" />
+ <field type="BOOL" name="bounding_shaped" />
+ <field type="BOOL" name="clip_shaped" />
+ <pad bytes="2" />
+ <field type="INT16" name="bounding_shape_extents_x" />
+ <field type="INT16" name="bounding_shape_extents_y" />
+ <field type="CARD16" name="bounding_shape_extents_width" />
+ <field type="CARD16" name="bounding_shape_extents_height" />
+ <field type="INT16" name="clip_shape_extents_x" />
+ <field type="INT16" name="clip_shape_extents_y" />
+ <field type="CARD16" name="clip_shape_extents_width" />
+ <field type="CARD16" name="clip_shape_extents_height" />
+ </reply>
+ </request>
+
+ <request name="SelectInput" opcode="6">
+ <field type="WINDOW" name="destination_window" />
+ <field type="BOOL" name="enable" />
+ </request>
+
+ <request name="InputSelected" opcode="7">
+ <field type="WINDOW" name="destination_window" />
+ <reply>
+ <field type="BOOL" name="enabled" />
+ </reply>
+ </request>
+
+ <request name="GetRectangles" opcode="8">
+ <field type="WINDOW" name="window" />
+ <field type="KIND" name="source_kind" />
+ <reply>
+ <field type="BYTE" name="ordering" />
+ <field type="CARD32" name="rectangles_len" />
+ <list type="RECTANGLE" name="rectangles">
+ <fieldref>rectangles_len</fieldref>
+ </list>
+ </reply>
+ </request>
+</xcb>
diff --git a/src/shm.xml b/src/shm.xml
new file mode 100644
index 0000000..e576c1f
--- /dev/null
+++ b/src/shm.xml
@@ -0,0 +1,113 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2001-2004 Bart Massey, Jamey Sharp, and Josh Triplett.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+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">
+ <import>xproto</import>
+
+ <xidtype name="SEG" />
+
+ <event name="Completion" number="0">
+ <pad bytes="1" />
+ <field type="DRAWABLE" name="drawable" />
+ <field type="SEG" name="shmseg" />
+ <field type="CARD16" name="minor_event" />
+ <field type="BYTE" name="major_event" />
+ <pad bytes="1" />
+ <field type="CARD32" name="offset" />
+ </event>
+
+ <errorcopy name="BadSeg" number="0" ref="Value" />
+
+ <request name="QueryVersion" opcode="0">
+ <reply>
+ <field type="BOOL" name="shared_pixmaps" />
+ <field type="CARD16" name="major_version" />
+ <field type="CARD16" name="minor_version" />
+ <field type="CARD16" name="uid" />
+ <field type="CARD16" name="gid" />
+ <field type="CARD8" name="pixmap_format" />
+ </reply>
+ </request>
+
+ <request name="Attach" opcode="1">
+ <field type="SEG" name="shmseg" />
+ <field type="CARD32" name="shmid" />
+ <field type="BOOL" name="read_only" />
+ </request>
+
+ <request name="Detach" opcode="2">
+ <field type="SEG" name="shmseg" />
+ </request>
+
+ <request name="PutImage" opcode="3">
+ <field type="DRAWABLE" name="drawable" />
+ <field type="GCONTEXT" name="gc" />
+ <field type="CARD16" name="total_width" />
+ <field type="CARD16" name="total_height" />
+ <field type="CARD16" name="src_x" />
+ <field type="CARD16" name="src_y" />
+ <field type="CARD16" name="src_width" />
+ <field type="CARD16" name="src_height" />
+ <field type="INT16" name="dst_x" />
+ <field type="INT16" name="dst_y" />
+ <field type="CARD8" name="depth" />
+ <field type="CARD8" name="format" />
+ <field type="CARD8" name="send_event" />
+ <pad bytes="1" />
+ <field type="SEG" name="shmseg" />
+ <field type="CARD32" name="offset" />
+ </request>
+
+ <request name="GetImage" opcode="4">
+ <field type="DRAWABLE" name="drawable" />
+ <field type="INT16" name="x" />
+ <field type="INT16" name="y" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <field type="CARD32" name="plane_mask" />
+ <field type="CARD8" name="format" />
+ <pad bytes="3" />
+ <field type="SEG" name="shmseg" />
+ <field type="CARD32" name="offset" />
+ <reply>
+ <field type="CARD8" name="depth" />
+ <field type="VISUALID" name="visual" />
+ <field type="CARD32" name="size" />
+ </reply>
+ </request>
+
+ <request name="CreatePixmap" opcode="5">
+ <field type="PIXMAP" name="pid" />
+ <field type="DRAWABLE" name="drawable" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <field type="CARD8" name="depth" />
+ <pad bytes="3" />
+ <field type="SEG" name="shmseg" />
+ <field type="CARD32" name="offset" />
+ </request>
+</xcb>
diff --git a/src/sync.xml b/src/sync.xml
new file mode 100644
index 0000000..6efca36
--- /dev/null
+++ b/src/sync.xml
@@ -0,0 +1,188 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2004 Mikko Torni and Josh Triplett.
+All Rights Reserved. See the file COPYING in this directory
+for licensing information.
+-->
+<xcb header="sync" extension-xname="SYNC" extension-name="Sync">
+ <import>xproto</import>
+
+ <xidtype name="ALARM" />
+
+ <enum name="ALARMSTATE">
+ <item name="Active" />
+ <item name="Inactive" />
+ <item name="Destroyed" />
+ </enum>
+
+ <xidtype name="COUNTER" />
+
+ <enum name="TESTTYPE">
+ <item name="PositiveTransition" />
+ <item name="NegativeTransition" />
+ <item name="PositiveComparison" />
+ <item name="NegativeComparison" />
+ </enum>
+
+ <enum name="VALUETYPE">
+ <item name="Absolute" />
+ <item name="Relative" />
+ </enum>
+
+ <enum name="CA">
+ <item name="Counter"> <bit>0</bit></item>
+ <item name="ValueType"><bit>1</bit></item>
+ <item name="Value"> <bit>2</bit></item>
+ <item name="TestType"> <bit>3</bit></item>
+ <item name="Delta"> <bit>4</bit></item>
+ <item name="Events"> <bit>5</bit></item>
+ </enum>
+
+ <struct name="INT64">
+ <field type="INT32" name="hi" />
+ <field type="CARD32" name="lo" />
+ </struct>
+
+ <struct name="SYSTEMCOUNTER">
+ <field type="COUNTER" name="counter" />
+ <field type="INT64" name="resolution" />
+ <field type="CARD16" name="name_len" />
+ <list type="CARD8" name="name">
+ <fieldref>name_len</fieldref>
+ </list>
+ </struct>
+
+ <struct name="TRIGGER">
+ <field type="COUNTER" name="counter" />
+ <field type="VALUETYPE" name="wait_type" />
+ <field type="INT64" name="wait_value" />
+ <field type="TESTTYPE" name="test_type" />
+ </struct>
+
+ <struct name="WAITCONDITION">
+ <field type="TRIGGER" name="trigger" />
+ <field type="INT64" name="event_threshold" />
+ </struct>
+
+ <error name="Counter" number="0">
+ <field type="CARD32" name="bad_counter" />
+ <field type="CARD16" name="minor_opcode" />
+ <field type="CARD8" name="major_opcode" />
+ </error>
+
+ <error name="Alarm" number="1">
+ <field type="CARD32" name="bad_alarm" />
+ <field type="CARD16" name="minor_opcode" />
+ <field type="CARD8" name="major_opcode" />
+ </error>
+
+ <request name="Initialize" opcode="0">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD8" name="major_version" />
+ <field type="CARD8" name="minor_version" />
+ </reply>
+ </request>
+
+ <request name="ListSystemCounters" opcode="1">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="counters_len" />
+ <pad bytes="20" />
+ <list type="SYSTEMCOUNTER" name="counters">
+ <fieldref>counters_len</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="CreateCounter" opcode="2">
+ <field type="COUNTER" name="id" />
+ <field type="INT64" name="initial_value" />
+ </request>
+
+ <request name="DestroyCounter" opcode="6">
+ <field type="COUNTER" name="counter" />
+ </request>
+
+ <request name="QueryCounter" opcode="5">
+ <field type="COUNTER" name="counter" />
+ <reply>
+ <pad bytes="1" />
+ <field type="INT64" name="counter_value" />
+ </reply>
+ </request>
+
+ <request name="Await" opcode="7">
+ <list type="WAITCONDITION" name="wait_list" />
+ </request>
+
+ <request name="ChangeCounter" opcode="4">
+ <field type="COUNTER" name="counter" />
+ <field type="INT64" name="amount" />
+ </request>
+
+ <request name="SetCounter" opcode="3">
+ <field type="COUNTER" name="counter" />
+ <field type="INT64" name="value" />
+ </request>
+
+ <request name="CreateAlarm" opcode="8">
+ <field type="ALARM" name="id" />
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="value_mask"
+ value-list-name="value_list" />
+ </request>
+
+ <request name="ChangeAlarm" opcode="9">
+ <field type="ALARM" name="id" />
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="value_mask"
+ value-list-name="value_list" />
+ </request>
+
+ <request name="DestroyAlarm" opcode="11">
+ <field type="ALARM" name="alarm" />
+ </request>
+
+ <request name="QueryAlarm" opcode="10">
+ <field type="ALARM" name="alarm" />
+ <reply>
+ <pad bytes="1" />
+ <field type="TRIGGER" name="trigger" />
+ <field type="INT64" name="delta" />
+ <field type="BOOL" name="events" />
+ <field type="ALARMSTATE" name="state" />
+ </reply>
+ </request>
+
+ <request name="SetPriority" opcode="12">
+ <field type="CARD32" name="id" />
+ <field type="INT32" name="priority" />
+ </request>
+
+ <request name="GetPriority" opcode="13">
+ <field type="CARD32" name="id" />
+ <reply>
+ <pad bytes="1" />
+ <field type="INT32" name="priority" />
+ </reply>
+ </request>
+
+ <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="TIMESTAMP" name="timestamp" />
+ <field type="CARD16" name="count" />
+ <field type="BOOL" name="destroyed" />
+ </event>
+
+ <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="TIMESTAMP" name="timestamp" />
+ </event>
+</xcb>
diff --git a/src/xc_misc.xml b/src/xc_misc.xml
new file mode 100644
index 0000000..8643503
--- /dev/null
+++ b/src/xc_misc.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2004 Mikko Torni and Josh Triplett.
+All Rights Reserved. See the file COPYING in this directory
+for licensing information.
+-->
+<xcb header="xc_misc" extension-xname="XC-MISC" extension-name="XCMisc">
+ <request name="GetVersion" opcode="0">
+ <field type="CARD16" name="client_major_version" />
+ <field type="CARD16" name="client_minor_version" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="server_major_version" />
+ <field type="CARD16" name="server_minor_version" />
+ </reply>
+ </request>
+
+ <request name="GetXIDRange" opcode="1">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="start_id" />
+ <field type="CARD32" name="count" />
+ </reply>
+ </request>
+
+ <request name="GetXIDList" opcode="2">
+ <field type="CARD32" name="count" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="ids_len" />
+ <pad bytes="20" />
+ <list type="CARD32" name="ids">
+ <fieldref>ids_len</fieldref>
+ </list>
+ </reply>
+ </request>
+</xcb>
diff --git a/src/xevie.xml b/src/xevie.xml
new file mode 100644
index 0000000..1e5851f
--- /dev/null
+++ b/src/xevie.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2004 Josh Triplett. All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+<!-- This file describes version 1 of XEVIE. -->
+<xcb header="xevie" extension-xname="XEVIE" extension-name="Xevie">
+ <request name="QueryVersion" opcode="0">
+ <field type="CARD16" name="client_major_version" />
+ <field type="CARD16" name="client_minor_version" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="server_major_version" />
+ <field type="CARD16" name="server_minor_version" />
+ <pad bytes="20" />
+ </reply>
+ </request>
+
+ <request name="Start" opcode="1">
+ <field type="CARD32" name="screen" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="24" />
+ </reply>
+ </request>
+
+ <request name="End" opcode="2">
+ <field type="CARD32" name="cmap" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="24" />
+ </reply>
+ </request>
+
+ <enum name="Datatype">
+ <item name="Unmodified" />
+ <item name="Modified" />
+ </enum>
+
+ <!-- The Send request needs to send an arbitrary Event; this type is used
+ to reserve the necessary structure size. -->
+ <struct name="Event">
+ <pad bytes="32" />
+ </struct>
+
+ <request name="Send" opcode="3">
+ <field type="Event" name="event" />
+ <field type="CARD32" name="data_type" /> <!-- Datatype -->
+ <pad bytes="64" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="24" />
+ </reply>
+ </request>
+
+ <request name="SelectInput" opcode="4">
+ <field type="CARD32" name="event_mask" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="24" />
+ </reply>
+ </request>
+</xcb>
diff --git a/src/xf86dri.xml b/src/xf86dri.xml
new file mode 100644
index 0000000..bb37ca7
--- /dev/null
+++ b/src/xf86dri.xml
@@ -0,0 +1,168 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2005 Jeremy Kolb.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person ob/Sintaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+
+<xcb header="xf86dri" extension-xname="XFree86-DRI" extension-name="XF86Dri">
+
+ <!-- Using http://dri.sourceforge.net/doc/dri_extensions_low_level.txt -->
+
+ <!-- Types -->
+
+ <struct name="DrmClipRect">
+ <field type="INT16" name="x1" />
+ <field type="INT16" name="y1" />
+ <field type="INT16" name="x2" />
+ <field type="INT16" name="x3" />
+ </struct>
+
+ <!-- Requests -->
+ <request name="QueryVersion" opcode="0">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="dri_major_version" />
+ <field type="CARD16" name="dri_minor_version" />
+ <field type="CARD32" name="dri_minor_patch" />
+ </reply>
+ </request>
+
+ <request name="QueryDirectRenderingCapable" opcode="1">
+ <field type="CARD32" name="screen" />
+ <reply>
+ <pad bytes="1" />
+ <field type="BOOL" name="is_capable" />
+ </reply>
+ </request>
+
+ <request name="OpenConnection" opcode="2">
+ <field type="CARD32" name="screen" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="drm_client_key_low" />
+ <field type="CARD32" name="drm_client_key_high" />
+ <field type="CARD32" name="sarea_handle_low" />
+ <field type="CARD32" name="sarea_handle_high" />
+ <field type="CARD32" name="bus_id_len" />
+ <pad bytes="12" />
+ <list type="CARD8" name="bus_id">
+ <fieldref>bus_id_len</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="CloseConnection" opcode="3">
+ <field type="CARD32" name="screen" />
+ </request>
+
+ <request name="GetClientDriverName" opcode="4">
+ <field type="CARD32" name="screen" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="client_driver_major_version" />
+ <field type="CARD32" name="client_driver_minor_version" />
+ <field type="CARD32" name="client_driver_patch_version" />
+ <field type="CARD32" name="client_driver_name_len" />
+ <pad bytes="8" />
+ <list type="CARD8" name="client_driver_name">
+ <fieldref>client_driver_name_len</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="CreateContext" opcode="5">
+ <field type="CARD32" name="visual" />
+ <field type="CARD32" name="screen" />
+ <field type="CARD32" name="context" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="hw_context" />
+ </reply>
+ </request>
+
+ <request name="DestroyContext" opcode="6">
+ <field type="CARD32" name="screen" />
+ <field type="CARD32" name="context" />
+ </request>
+
+ <request name="CreateDrawable" opcode="7">
+ <field type="CARD32" name="screen" />
+ <field type="CARD32" name="drawable" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="hw_drawable_handle" />
+ </reply>
+ </request>
+
+ <request name="DestroyDrawable" opcode="8">
+ <field type="CARD32" name="screen" />
+ <field type="CARD32" name="drawable" />
+ </request>
+
+ <request name="GetDrawableInfo" opcode="9">
+ <field type="CARD32" name="screen" />
+ <field type="CARD32" name="drawable" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="drawable_table_index" />
+ <field type="CARD32" name="drawable_table_stamp" />
+ <field type="INT16" name="drawable_origin_X" />
+ <field type="INT16" name="drawable_origin_Y" />
+ <field type="INT16" name="drawable_size_W" />
+ <field type="INT16" name="drawable_size_H" />
+ <field type="CARD32" name="num_clip_rects" />
+ <pad bytes="4" />
+ <list type="DrmClipRect" name="clip_rects">
+ <fieldref>num_clip_rects</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GetDeviceInfo" opcode="10">
+ <field type="CARD32" name="screen" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="framebuffer_handle_low" />
+ <field type="CARD32" name="framebuffer_handle_high" />
+ <field type="CARD32" name="framebuffer_origin_offset" />
+ <field type="CARD32" name="framebuffer_size" />
+ <field type="CARD32" name="framebuffer_stride" />
+ <field type="CARD32" name="device_private_size" />
+ <list type="CARD32" name="device_private">
+ <fieldref>device_private_size</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <!-- Not in this doc, but specified in Mesa/src/glx/x11/xf86dri.h -->
+ <request name="AuthConnection" opcode="11">
+ <field type="CARD32" name="screen" />
+ <field type="CARD32" name="magic" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="authenticated" />
+ </reply>
+ </request>
+</xcb>
diff --git a/src/xfixes.xml b/src/xfixes.xml
new file mode 100644
index 0000000..9f890cb
--- /dev/null
+++ b/src/xfixes.xml
@@ -0,0 +1,324 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2004 Josh Triplett. All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+<!-- This file describes version 4 of XFixes. -->
+<xcb header="xfixes" extension-xname="XFIXES" extension-name="XFixes">
+ <import>xproto</import>
+ <import>render</import>
+ <import>shape</import>
+
+ <!-- Version 1 -->
+ <request name="QueryVersion" opcode="0">
+ <field type="CARD32" name="client_major_version" />
+ <field type="CARD32" name="client_minor_version" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="major_version" />
+ <field type="CARD32" name="minor_version" />
+ <pad bytes="16" />
+ </reply>
+ </request>
+
+ <enum name="SaveSetMode">
+ <item name="Insert" />
+ <item name="Delete" />
+ </enum>
+
+ <enum name="SaveSetTarget">
+ <item name="Nearest" />
+ <item name="Root" />
+ </enum>
+
+ <enum name="SaveSetMapping">
+ <item name="Map" />
+ <item name="Unmap" />
+ </enum>
+
+ <request name="ChangeSaveSet" opcode="1">
+ <field type="BYTE" name="mode" /> <!-- SaveSetMode -->
+ <field type="BYTE" name="target" /> <!-- SaveSetTarget -->
+ <field type="BYTE" name="map" /> <!-- SaveSetMapping -->
+ <pad bytes="1" />
+ <field type="WINDOW" name="window" />
+ </request>
+
+ <enum name="SelectionEvent">
+ <item name="SetSelectionOwner" />
+ <item name="SelectionWindowDestroy" />
+ <item name="SelectionClientClose" />
+ </enum>
+
+ <enum name="SelectionEventMask">
+ <item name="SetSelectionOwner"> <bit>0</bit></item>
+ <item name="SelectionWindowDestroy"><bit>1</bit></item>
+ <item name="SelectionClientClose"> <bit>2</bit></item>
+ </enum>
+
+ <event name="SelectionNotify" number="0">
+ <field type="CARD8" name="subtype" /> <!-- SelectionEvent -->
+ <field type="WINDOW" name="window" />
+ <field type="WINDOW" name="owner" />
+ <field type="ATOM" name="selection" />
+ <field type="TIMESTAMP" name="timestamp" />
+ <field type="TIMESTAMP" name="selection_timestamp" />
+ <pad bytes="8" />
+ </event>
+
+ <request name="SelectSelectionInput" opcode="2">
+ <field type="WINDOW" name="window" />
+ <field type="ATOM" name="selection" />
+ <field type="CARD32" name="event_mask" /> <!-- SelectionEventMask -->
+ </request>
+
+ <enum name="CursorNotify">
+ <item name="DisplayCursor" />
+ </enum>
+
+ <enum name="CursorNotifyMask">
+ <item name="DisplayCursor"><bit>0</bit></item>
+ </enum>
+
+ <event name="CursorNotify" number="1">
+ <field type="CARD8" name="subtype" /> <!-- 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 -->
+ <pad bytes="12" />
+ </event>
+
+ <request name="SelectCursorInput" opcode="3">
+ <field type="WINDOW" name="window" />
+ <field type="CARD32" name="event_mask" /> <!-- CursorNotifyMask -->
+ </request>
+
+ <request name="GetCursorImage" opcode="4">
+ <reply>
+ <pad bytes="1" />
+ <field type="INT16" name="x" />
+ <field type="INT16" name="y" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <field type="CARD16" name="xhot" />
+ <field type="CARD16" name="yhot" />
+ <field type="CARD32" name="cursor_serial" />
+ <pad bytes="8" />
+ <list type="CARD32" name="cursor_image">
+ <op op="*">
+ <fieldref>width</fieldref>
+ <fieldref>height</fieldref>
+ </op>
+ </list>
+ </reply>
+ </request>
+
+ <!-- Version 2 -->
+
+ <xidtype name="REGION" />
+
+ <error name="BadRegion" number="0" />
+
+ <request name="CreateRegion" opcode="5">
+ <field type="REGION" name="region" />
+ <list type="RECTANGLE" name="rectangles" />
+ </request>
+
+ <request name="CreateRegionFromBitmap" opcode="6">
+ <field type="REGION" name="region" />
+ <field type="PIXMAP" name="bitmap" />
+ </request>
+
+ <request name="CreateRegionFromWindow" opcode="7">
+ <field type="REGION" name="region" />
+ <field type="WINDOW" name="window" />
+ <field type="shape:KIND" name="kind" />
+ <pad bytes="3" />
+ </request>
+
+ <request name="CreateRegionFromGC" opcode="8">
+ <field type="REGION" name="region" />
+ <field type="GCONTEXT" name="gc" />
+ </request>
+
+ <request name="CreateRegionFromPicture" opcode="9">
+ <field type="REGION" name="region" />
+ <field type="PICTURE" name="picture" />
+ </request>
+
+ <request name="DestroyRegion" opcode="10">
+ <field type="REGION" name="region" />
+ </request>
+
+ <request name="SetRegion" opcode="11">
+ <field type="REGION" name="region" />
+ <list type="RECTANGLE" name="rectangles" />
+ </request>
+
+ <request name="CopyRegion" opcode="12">
+ <field type="REGION" name="source" />
+ <field type="REGION" name="destination" />
+ </request>
+
+ <request name="UnionRegion" opcode="13">
+ <field type="REGION" name="source1" />
+ <field type="REGION" name="source2" />
+ <field type="REGION" name="destination" />
+ </request>
+
+ <request name="IntersectRegion" opcode="14">
+ <field type="REGION" name="source1" />
+ <field type="REGION" name="source2" />
+ <field type="REGION" name="destination" />
+ </request>
+
+ <request name="SubtractRegion" opcode="15">
+ <field type="REGION" name="source1" />
+ <field type="REGION" name="source2" />
+ <field type="REGION" name="destination" />
+ </request>
+
+ <request name="InvertRegion" opcode="16">
+ <field type="REGION" name="source" />
+ <field type="RECTANGLE" name="bounds" />
+ <field type="REGION" name="destination" />
+ </request>
+
+ <request name="TranslateRegion" opcode="17">
+ <field type="REGION" name="region" />
+ <field type="INT16" name="dx" />
+ <field type="INT16" name="dy" />
+ </request>
+
+ <request name="RegionExtents" opcode="18">
+ <field type="REGION" name="source" />
+ <field type="REGION" name="destination" />
+ </request>
+
+ <request name="FetchRegion" opcode="19">
+ <field type="REGION" name="region" />
+ <reply>
+ <pad bytes="1" />
+ <field type="RECTANGLE" name="extents" />
+ <pad bytes="16" />
+ <list type="RECTANGLE" name="rectangles" />
+ </reply>
+ </request>
+
+ <request name="SetGCClipRegion" opcode="20">
+ <field type="GCONTEXT" name="gc" />
+ <field type="REGION" name="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" />
+ <pad bytes="3" />
+ <field type="INT16" name="x_offset" />
+ <field type="INT16" name="y_offset" />
+ <field type="REGION" name="region" />
+ </request>
+
+ <request name="SetPictureClipRegion" opcode="22">
+ <field type="PICTURE" name="picture" />
+ <field type="REGION" name="region" />
+ <field type="INT16" name="x_origin" />
+ <field type="INT16" name="y_origin" />
+ </request>
+
+ <request name="SetCursorName" opcode="23">
+ <field type="CURSOR" name="cursor" />
+ <field type="CARD16" name="nbytes" />
+ <pad bytes="2" />
+ <list type="CARD8" 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="CARD16" name="nbytes" />
+ <pad bytes="18" />
+ <list type="CARD8" name="name"><fieldref>nbytes</fieldref></list>
+ </reply>
+ </request>
+
+ <request name="GetCursorImageAndName" opcode="25">
+ <reply>
+ <pad bytes="1" />
+ <field type="INT16" name="x" />
+ <field type="INT16" name="y" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <field type="CARD16" name="xhot" />
+ <field type="CARD16" name="yhot" />
+ <field type="CARD32" name="cursor_serial" />
+ <field type="ATOM" name="cursor_atom" />
+ <field type="CARD16" name="nbytes" />
+ <pad bytes="2" />
+ <list type="CARD8" name="name"><fieldref>nbytes</fieldref></list>
+ <list type="CARD32" name="cursor_image">
+ <op op="*">
+ <fieldref>width</fieldref>
+ <fieldref>height</fieldref>
+ </op>
+ </list>
+ </reply>
+ </request>
+
+ <request name="ChangeCursor" opcode="26">
+ <field type="CURSOR" name="source" />
+ <field type="CURSOR" name="destination" />
+ </request>
+
+ <request name="ChangeCursorByName" opcode="27">
+ <field type="CURSOR" name="src" />
+ <field type="CARD16" name="nbytes" />
+ <pad bytes="2" />
+ <list type="CARD8" name="name"><fieldref>nbytes</fieldref></list>
+ </request>
+
+ <!-- Version 3 -->
+ <request name="ExpandRegion" opcode="28">
+ <field type="REGION" name="source" />
+ <field type="REGION" name="destination" />
+ <field type="CARD16" name="left" />
+ <field type="CARD16" name="right" />
+ <field type="CARD16" name="top" />
+ <field type="CARD16" name="bottom" />
+ </request>
+
+ <!-- Version 4 -->
+ <request name="HideCursor" opcode="29">
+ <field type="WINDOW" name="window" />
+ </request>
+
+ <request name="ShowCursor" opcode="30">
+ <field type="WINDOW" name="window" />
+ </request>
+</xcb>
diff --git a/src/xinerama.xml b/src/xinerama.xml
new file mode 100644
index 0000000..2566787
--- /dev/null
+++ b/src/xinerama.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2006 Jeremy Kolb.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+
+<xcb header="xinerama" extension-xname="XINERAMA" extension-name="Xinerama">
+
+ <!-- Version 1.1 -->
+
+ <import>xproto</import>
+
+ <struct name="ScreenInfo">
+ <field type="INT16" name="x_org" />
+ <field type="INT16" name="y_org" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ </struct>
+
+ <request name="QueryVersion" opcode="0">
+ <field type="CARD8" name="major" />
+ <field type="CARD8" name="minor" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="major" />
+ <field type="CARD16" name="minor" />
+ </reply>
+ </request>
+
+ <request name="GetState" opcode="1">
+ <field type="WINDOW" name="window" />
+ <reply>
+ <field type="BYTE" name="state" />
+ <field type="WINDOW" name="window" />
+ </reply>
+ </request>
+
+ <request name="GetScreenCount" opcode="2">
+ <field type="WINDOW" name="window" />
+ <reply>
+ <field type="BYTE" name="screen_count" />
+ <field type="WINDOW" name="window" />
+ </reply>
+ </request>
+
+ <request name="GetScreenSize" opcode="3">
+ <field type="WINDOW" name="window" />
+ <field type="SCREEN" name="screen" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="width" />
+ <field type="CARD32" name="height" />
+ <field type="WINDOW" name="window" />
+ <field type="SCREEN" name="screen" />
+ </reply>
+ </request>
+
+ <request name="IsActive" opcode="4">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="state" />
+ </reply>
+ </request>
+
+ <request name="QueryScreens" opcode="5">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="number" />
+ <pad bytes="20" />
+ <list type="ScreenInfo" name="screen_info">
+ <fieldref>number</fieldref>
+ </list>
+ </reply>
+ </request>
+
+</xcb>
diff --git a/src/xprint.xml b/src/xprint.xml
new file mode 100644
index 0000000..11cd7c0
--- /dev/null
+++ b/src/xprint.xml
@@ -0,0 +1,326 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2005 Jeremy Kolb.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person ob/Sintaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+
+<xcb header="xprint" extension-xname="XpExtension" extension-name="XP">
+ <!-- Conforms to XPRINT 1.0 -->
+
+ <import>xproto</import>
+
+ <!-- Types -->
+ <struct name="PRINTER">
+ <field type="CARD32" name="nameLen" />
+ <list type="STRING8" name="name">
+ <fieldref>nameLen</fieldref>
+ </list>
+ <!-- Padding -->
+ <field type="CARD32" name="descLen" />
+ <list type="STRING8" name="description">
+ <fieldref>descLen</fieldref>
+ </list>
+ <!-- More padding -->
+ </struct>
+
+ <!--<typedef oldname="CARD32" newname="PCONTEXT" />-->
+ <xidtype name="PCONTEXT" />
+ <typedef oldname="char" newname="STRING8" />
+
+ <!-- "PrintGetDocumentData" -->
+ <enum name="GetDoc">
+ <item name="Finished"><value>0</value></item>
+ <item name="SecondConsumer"><value>1</value></item>
+ </enum>
+
+ <!-- Event Mask ("PrintSelectInput") -->
+ <enum name="EvMask">
+ <item name="NoEventMask"><value>0x00000000</value></item>
+ <item name="PrintMask"><value>0x00000001</value></item>
+ <item name="AttributeMask"><value>0x00000002</value></item>
+ </enum>
+
+ <!-- "PrintNotify" detail -->
+ <enum name="Detail">
+ <item name="StartJobNotify"><value>1</value></item>
+ <item name="EndJobNotify"><value>2</value></item>
+ <item name="StartDocNotify"><value>3</value></item>
+ <item name="EndDocNotify"><value>4</value></item>
+ <item name="StartPageNotify"><value>5</value></item>
+ <item name="EndPageNotify"><value>6</value></item>
+ </enum>
+
+ <!-- "AttributeNotify" detail -->
+ <enum name="Attr">
+ <item name="JobAttr"><value>1</value></item>
+ <item name="DocAttr"><value>2</value></item>
+ <item name="PageAttr"><value>3</value></item>
+ <item name="PrinterAttr"><value>4</value></item>
+ <item name="ServerAttr"><value>5</value></item>
+ <item name="MediumAttr"><value>6</value></item>
+ <item name="SpoolerAttr"><value>7</value></item>
+ </enum>
+
+
+ <!-- Requests -->
+ <request name="PrintQueryVersion" opcode="0">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="major_version" />
+ <field type="CARD16" name="minor_version" />
+ </reply>
+ </request>
+
+ <request name="PrintGetPrinterList" opcode="1">
+ <field type="CARD32" name="printerNameLen" />
+ <field type="CARD32" name="localeLen" />
+ <list type="STRING8" name="printer_name">
+ <fieldref>printerNameLen</fieldref>
+ </list>
+ <!-- There's some padding in here... -->
+ <list type="STRING8" name="locale">
+ <fieldref>localeLen</fieldref>
+ </list>
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="listCount" />
+ <pad bytes="20" />
+ <list type="PRINTER" name="printers">
+ <fieldref>listCount</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="PrintRehashPrinterList" opcode="20" />
+
+ <request name="CreateContext" opcode="2">
+ <field type="CARD32" name="context_id" />
+ <field type="CARD32" name="printerNameLen" />
+ <field type="CARD32" name="localeLen" />
+ <list type="STRING8" name="printerName">
+ <fieldref>printerNameLen</fieldref>
+ </list>
+ <!-- padding -->
+ <list type="STRING8" name="locale">
+ <fieldref>localeLen</fieldref>
+ </list>
+ </request>
+
+ <request name="PrintSetContext" opcode="3">
+ <field type="CARD32" name="context" />
+ </request>
+
+ <request name="PrintGetContext" opcode="4">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="context" />
+ </reply>
+ </request>
+
+ <request name="PrintDestroyContext" opcode="5">
+ <field type="CARD32" name="context" />
+ </request>
+
+ <request name="PrintGetScreenOfContext" opcode="6">
+ <reply>
+ <pad bytes="1" />
+ <field type="WINDOW" name="root" />
+ </reply>
+ </request>
+
+ <request name="PrintStartJob" opcode="7">
+ <field type="CARD8" name="output_mode"/>
+ </request>
+
+ <request name="PrintEndJob" opcode="8">
+ <field type="BOOL" name="cancel" />
+ </request>
+
+ <request name="PrintStartDoc" opcode="9">
+ <field type="CARD8" name="driver_mode" />
+ </request>
+
+ <request name="PrintEndDoc" opcode="10">
+ <field type="BOOL" name="cancel" />
+ </request>
+
+ <request name="PrintPutDocumentData" opcode="11">
+ <field type="DRAWABLE" name="drawable" />
+ <field type="CARD32" name="len_data" />
+ <field type="CARD16" name="len_fmt" />
+ <field type="CARD16" name="len_options" />
+ <list type="BYTE" name="data">
+ <fieldref>len_data</fieldref>
+ </list>
+ <!-- padding -->
+ <list type="STRING8" name="doc_format" />
+ <!-- padding -->
+ <list type="STRING8" name="options" />
+ </request>
+
+ <request name="PrintGetDocumentData" opcode="12">
+ <field type="PCONTEXT" name="context" />
+ <field type="CARD32" name="max_bytes" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="status_code" />
+ <field type="CARD32" name="finished_flag" />
+ <field type="CARD32" name="dataLen" />
+ <pad bytes="12" />
+ <list type="BYTE" name="data">
+ <fieldref>dataLen</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="PrintStartPage" opcode="13">
+ <field type="WINDOW" name="window" />
+ </request>
+
+ <request name="PrintEndPage" opcode="14">
+ <field type="BOOL" name="cancel" />
+ <pad bytes="3" />
+ </request>
+
+ <request name="PrintSelectInput" opcode="15">
+ <field type="PCONTEXT" name="context" />
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="event_mask"
+ value-list-name="event_list" />
+ </request>
+
+ <request name="PrintInputSelected" opcode="16">
+ <field type="PCONTEXT" name="context" />
+ <reply>
+ <pad bytes="1" />
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="event_mask"
+ value-list-name="event_list" />
+ <valueparam value-mask-type="CARD32"
+ value-mask-name="all_events_mask"
+ value-list-name="all_events_list" />
+ </reply>
+ </request>
+
+ <request name="PrintGetAttributes" opcode="17">
+ <field type="PCONTEXT" name="context" />
+ <field type="CARD8" name="pool" />
+ <pad bytes="3" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="stringLen" />
+ <pad bytes="20" />
+ <field type="STRING8" name="attributes" />
+ </reply>
+ </request>
+
+ <request name="PrintGetOneAttributes" opcode="19">
+ <field type="PCONTEXT" name="context" />
+ <field type="CARD32" name="nameLen" />
+ <field type="CARD8" name="pool" />
+ <pad bytes="3" />
+ <list type="STRING8" name="name">
+ <fieldref>nameLen</fieldref>
+ </list>
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="valueLen" />
+ <pad bytes="20" />
+ <list type="STRING8" name="value">
+ <fieldref>valueLen</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="PrintSetAttributes" opcode="18">
+ <field type="PCONTEXT" name="context" />
+ <field type="CARD32" name="stringLen" />
+ <field type="CARD8" name="pool" />
+ <field type="CARD8" name="rule" />
+ <pad bytes="2" />
+ <list type="STRING8" name="attributes" />
+ </request>
+
+ <request name="PrintGetPageDimensions" opcode="21">
+ <field type="PCONTEXT" name="context" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <field type="CARD16" name="offset_x" />
+ <field type="CARD16" name="offset_y" />
+ <field type="CARD16" name="reproducible_width" />
+ <field type="CARD16" name="reproducible_height" />
+ </reply>
+ </request>
+
+ <request name="PrintQueryScreens" opcode="22">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="listCount" />
+ <pad bytes="20" />
+ <list type="WINDOW" name="roots">
+ <fieldref>listCount</fieldref>
+ </list>
+ <!-- There may be a WINDOW rootWindow here... -->
+ </reply>
+ </request>
+
+ <request name="PrintSetImageResolution" opcode="23">
+ <field type="PCONTEXT" name="context" />
+ <field type="CARD16" name="image_resolution" />
+ <reply>
+ <field type="BOOL" name="status" />
+ <field type="CARD16" name="previous_resolutions" />
+ </reply>
+ </request>
+
+ <request name="PrintGetImageResolution" opcode="24">
+ <field type="PCONTEXT" name="context" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="image_resolution" />
+ </reply>
+ </request>
+
+
+ <!-- Events -->
+ <event name="Notify" number="0">
+ <field type="CARD8" name="detail" />
+ <field type="PCONTEXT" name="context" />
+ <field type="BOOL" name="cancel" />
+ </event>
+
+ <event name="AttributNotify" number="1">
+ <field type="CARD8" name="detail" />
+ <field type="PCONTEXT" name="context" />
+ </event>
+
+ <!-- Errors -->
+ <error name="BadContext" number="0" />
+ <error name="BadSequence" number="1" />
+
+</xcb>
+
diff --git a/src/xtest.xml b/src/xtest.xml
new file mode 100644
index 0000000..72adf0b
--- /dev/null
+++ b/src/xtest.xml
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2006 Ian Osgood
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person ob/Sintaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+
+<xcb header="xtest" extension-xname="XTEST" extension-name="Test">
+ <!-- Conforms to XTEST 2.1 -->
+
+ <import>xproto</import>
+
+ <!-- Requests -->
+ <request name="GetVersion" opcode="0">
+ <field type="CARD8" name="major_version" />
+ <pad bytes="1" />
+ <field type="CARD16" name="minor_version" />
+ <reply>
+ <field type="CARD8" name="major_version" />
+ <field type="CARD16" name="minor_version" />
+ </reply>
+ </request>
+
+ <enum name="Cursor">
+ <item name="None"> <value>0</value></item>
+ <item name="Current"><value>1</value></item>
+ </enum>
+
+ <request name="CompareCursor" opcode="1">
+ <field type="WINDOW" name="window" />
+ <field type="CURSOR" name="cursor" />
+ <reply>
+ <field type="BOOL" name="same" />
+ </reply>
+ </request>
+
+ <!-- There are several ways to use the FakeInput request:
+ 1. Simulate a keypress:
+ type = XCBKeyPress or XCBKeyRelease
+ detail = keycode
+ 2. Simulate a button:
+ type = XCBButtonPress or XCBButtonRelease
+ detail = enum XCBButton (1..5)
+ 3. Simulate mouse motion:
+ type = XCBMotionNotify
+ detail = 0 or 1
+ window = XCBNone or a root window id
+ rootX,
+ rootY = position (relative if detail==1)
+
+ Version 2.2 adds support for the XInput extension:
+ 4. Simulate a device keypress
+ 5. Simulate a device button
+ 6. Simulate a proximity event
+ 7. Simulate a device motion event
+ [These are not yet supported, since we would also need to
+ send the variable-length state of the axes.]
+
+ In each case, time is set to a delay in milliseconds.
+ -->
+
+ <request name="FakeInput" opcode="2">
+ <field type="BYTE" name="type" />
+ <field type="BYTE" name="detail" />
+ <pad bytes="2" />
+ <field type="CARD32" name="time" />
+ <field type="WINDOW" name="window" />
+ <pad bytes="8" />
+ <field type="CARD16" name="rootX" />
+ <field type="CARD16" name="rootY" />
+ <pad bytes="7" />
+ <!-- Version 2.2: XInput device -->
+ <field type="CARD8" name="deviceid" />
+ <!-- Version 2.2: optional axes state here -->
+ </request>
+
+ <request name="GrabControl" opcode="3">
+ <field type="BOOL" name="impervious" />
+ <pad bytes="3" />
+ </request>
+
+ <!-- No events or errors -->
+
+</xcb>
\ No newline at end of file
diff --git a/src/xv.xml b/src/xv.xml
new file mode 100644
index 0000000..b232dea
--- /dev/null
+++ b/src/xv.xml
@@ -0,0 +1,430 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2006 Jeremy Kolb.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+
+<xcb header="xv" extension-xname="XVideo" extension-name="Xv">
+ <import>xproto</import>
+ <import>shm</import>
+ <!-- Implements version 2.2 of XV -->
+
+ <!-- XIDs -->
+ <xidtype name="PORT" />
+ <xidtype name="ENCODING" />
+
+ <enum name="Type">
+ <item name="InputMask"><value>0x00000001</value></item>
+ <item name="OutputMask"><value>0x00000002</value></item>
+ <item name="VideoMask"><value>0x00000004</value></item>
+ <item name="StillMask"><value>0x00000008</value></item>
+ <item name="ImageMask"><value>0x00000010</value></item>
+ </enum>
+
+ <enum name="ImageFormatInfoType">
+ <item name="RGB" />
+ <item name="YUV" />
+ </enum>
+
+ <enum name="ImageFormatInfoFormat">
+ <item name="Packed" />
+ <item name="Planar" />
+ </enum>
+
+ <enum name="AttributeFlag">
+ <item name="Gettable"><value>0x01</value></item>
+ <item name="Settable"><value>0x02</value></item>
+ </enum>
+
+ <struct name="Rational">
+ <field type="INT32" name="numerator" />
+ <field type="INT32" name="denominator" />
+ </struct>
+
+ <struct name="AdaptorInfo">
+ <field type="PORT" name="base_id" />
+ <field type="CARD16" name="name_size" />
+ <field type="CARD16" name="num_ports" />
+ <field type="CARD16" name="num_formats" />
+ <field type="CARD8" name="type" />
+ <field type="CARD8" name="pad" />
+ <list type="char" name="name">
+ <fieldref>name_size</fieldref>
+ </list>
+ <list type="Format" name="formats">
+ <fieldref>num_formats</fieldref>
+ </list>
+
+ </struct>
+
+ <struct name="EncodingInfo">
+ <field type="ENCODING" name="encoding" />
+ <field type="CARD16" name="name_size" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <field type="Rational" name="rate" />
+ <!--
+ Xvproto.h has a padding CARD16 here but the name
+ overlaps.
+ -->
+ <list type="char" name="name">
+ <fieldref>name_size</fieldref>
+ </list>
+ </struct>
+
+ <struct name="Format">
+ <field type="VISUALID" name="visual" />
+ <field type="CARD8" name="depth" />
+ </struct>
+
+ <struct name="Image">
+ <field type="CARD32" name="id" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <field type="CARD32" name="data_size" />
+ <field type="CARD32" name="num_planes" />
+ <list type="CARD32" name="pitches">
+ <fieldref>num_planes</fieldref>
+ </list>
+ <list type="CARD32" name="offsets">
+ <fieldref>num_planes</fieldref>
+ </list>
+ <list type="CARD8" name="data">
+ <fieldref>data_size</fieldref>
+ </list>
+ <!-- Some XPointer "obdata" for SHM use-->
+ </struct>
+
+ <struct name="AttributeInfo">
+ <field type="CARD32" name="flags" />
+ <field type="INT32" name="min" />
+ <field type="INT32" name="max" />
+ <field type="CARD32" name="size" />
+ <list type="char" name="name">
+ <fieldref>size</fieldref>
+ </list>
+ </struct>
+
+ <struct name="ImageFormatInfo">
+ <field type="CARD32" name="id" />
+ <field type="CARD8" name="type" />
+ <field type="CARD8" name="byte_order" />
+ <field type="CARD16" name="pad1" />
+ <list type="CARD8" name="guid">
+ <value>16</value>
+ </list>
+ <field type="CARD8" name="bpp" />
+ <field type="CARD8" name="num_planes" />
+ <field type="CARD16" name="pad2" />
+ <field type="CARD8" name="depth" />
+ <field type="CARD8" name="pad3" />
+ <field type="CARD16" name="pad4" />
+ <field type="CARD32" name="red_mask" />
+ <field type="CARD32" name="green_mask" />
+ <field type="CARD32" name="blue_mask" />
+ <field type="CARD8" name="format" />
+ <field type="CARD8" name="pad5" />
+ <field type="CARD16" name="pad6" />
+ <field type="CARD32" name="y_sample_bits" />
+ <field type="CARD32" name="u_sample_bits" />
+ <field type="CARD32" name="v_sample_bits" />
+ <field type="CARD32" name="vhorz_y_period" />
+ <field type="CARD32" name="vhorz_u_period" />
+ <field type="CARD32" name="vhorz_v_period" />
+ <field type="CARD32" name="vvert_y_period" />
+ <field type="CARD32" name="vvert_u_period" />
+ <field type="CARD32" name="vvert_v_period" />
+ <list type="CARD8" name="vcomp_order">
+ <value>32</value>
+ </list>
+ <field type="CARD8" name="vscanline_order" />
+ <field type="CARD8" name="vpad7" />
+ <field type="CARD16" name="vpad8" />
+ <field type="CARD32" name="vpad9" />
+ <field type="CARD32" name="vpad10" />
+ </struct>
+
+
+ <!-- Errors -->
+ <error name="BadPort" number="0"/>
+ <error name="BadEncoding" number="1"/>
+ <error name="BadControl" number="2"/>
+
+ <!-- Events -->
+ <event name="VideoNotify" number="0">
+ <field type="BYTE" name="reason" />
+ <field type="TIMESTAMP" name="time" />
+ <field type="DRAWABLE" name="drawable" />
+ <field type="PORT" name="port" />
+ </event>
+
+ <event name="PortNotify" number="1">
+ <pad bytes="1" />
+ <field type="TIMESTAMP" name="time" />
+ <field type="PORT" name="port" />
+ <field type="ATOM" name="attribute" />
+ <field type="INT32" name="value" />
+ </event>
+
+
+ <!-- Requests -->
+ <request name="QueryExtension" opcode="0">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="major" />
+ <field type="CARD16" name="minor" />
+ </reply>
+ </request>
+
+ <request name="QueryAdaptors" opcode="1">
+ <field type="WINDOW" name="window" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="num_adaptors" />
+ <pad bytes="22" />
+ <list type="AdaptorInfo" name="info">
+ <fieldref>num_adaptors</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="QueryEncodings" opcode="2">
+ <field type="PORT" name="port" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="num_encodings" />
+ <!--
+ In Xvproto.h this padding is 24 bytes
+ in actuality it is 22 bytes
+ -->
+ <pad bytes="22" />
+ <list type="EncodingInfo" name="info">
+ <fieldref>num_encodings</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="GrabPort" opcode="3">
+ <field type="PORT" name="port" />
+ <field type="TIMESTAMP" name="time" />
+ <reply>
+ <field type="BYTE" name="result" />
+ </reply>
+ </request>
+
+ <request name="UngrabPort" opcode="4">
+ <field type="PORT" name="port" />
+ <field type="TIMESTAMP" name="time" />
+ </request>
+
+ <request name="PutVideo" opcode="5">
+ <field type="PORT" name="port" />
+ <field type="DRAWABLE" name="drawable" />
+ <field type="GCONTEXT" name="gc" />
+ <field type="INT16" name="vid_x" />
+ <field type="INT16" name="vid_y" />
+ <field type="CARD16" name="vid_w" />
+ <field type="CARD16" name="vid_h" />
+ <field type="INT16" name="drw_x" />
+ <field type="INT16" name="drw_y" />
+ <field type="CARD16" name="drw_w" />
+ <field type="CARD16" name="drw_h" />
+ </request>
+
+ <request name="PutStill" opcode="6">
+ <field type="PORT" name="port" />
+ <field type="DRAWABLE" name="drawable" />
+ <field type="GCONTEXT" name="gc" />
+ <field type="INT16" name="vid_x" />
+ <field type="INT16" name="vid_y" />
+ <field type="CARD16" name="vid_w" />
+ <field type="CARD16" name="vid_h" />
+ <field type="INT16" name="drw_x" />
+ <field type="INT16" name="drw_y" />
+ <field type="CARD16" name="drw_w" />
+ <field type="CARD16" name="drw_h" />
+ </request>
+
+ <request name="GetVideo" opcode="7">
+ <field type="PORT" name="port" />
+ <field type="DRAWABLE" name="drawable" />
+ <field type="GCONTEXT" name="gc" />
+ <field type="INT16" name="vid_x" />
+ <field type="INT16" name="vid_y" />
+ <field type="CARD16" name="vid_w" />
+ <field type="CARD16" name="vid_h" />
+ <field type="INT16" name="drw_x" />
+ <field type="INT16" name="drw_y" />
+ <field type="CARD16" name="drw_w" />
+ <field type="CARD16" name="drw_h" />
+ </request>
+
+ <request name="GetStill" opcode="8">
+ <field type="PORT" name="port" />
+ <field type="DRAWABLE" name="drawable" />
+ <field type="GCONTEXT" name="gc" />
+ <field type="INT16" name="vid_x" />
+ <field type="INT16" name="vid_y" />
+ <field type="CARD16" name="vid_w" />
+ <field type="CARD16" name="vid_h" />
+ <field type="INT16" name="drw_x" />
+ <field type="INT16" name="drw_y" />
+ <field type="CARD16" name="drw_w" />
+ <field type="CARD16" name="drw_h" />
+ </request>
+
+ <request name="StopVideo" opcode="9">
+ <field type="PORT" name="port" />
+ <field type="DRAWABLE" name="drawable" />
+ </request>
+
+ <request name="SelectVideoNotify" opcode="10">
+ <field type="DRAWABLE" name="drawable" />
+ <field type="BOOL" name="onoff" />
+ </request>
+
+ <request name="SelectPortNotify" opcode="11">
+ <field type="DRAWABLE" name="drawable" />
+ <field type="BOOL" name="onoff" />
+ </request>
+
+ <request name="QueryBestSize" opcode="12">
+ <field type="PORT" name="port" />
+ <field type="CARD16" name="vid_w" />
+ <field type="CARD16" name="vid_h" />
+ <field type="CARD16" name="drw_w" />
+ <field type="CARD16" name="drw_h" />
+ <field type="BOOL" name="motion" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="actual_width" />
+ <field type="CARD16" name="actual_height" />
+ </reply>
+ </request>
+
+ <request name="SetPortAttribute" opcode="13">
+ <field type="PORT" name="port" />
+ <field type="ATOM" name="attribute" />
+ <field type="INT32" name="value" />
+ </request>
+
+ <request name="GetPortAttribute" opcode="14">
+ <field type="PORT" name="port" />
+ <field type="ATOM" name="attribute" />
+ <reply>
+ <pad bytes="1" />
+ <field type="INT32" name="value" />
+ </reply>
+ </request>
+
+ <!-- Not in the docs beyond this point :( -->
+
+ <request name="QueryPortAttributes" opcode="15">
+ <field type="PORT" name="port" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num_attributes" />
+ <field type="CARD32" name="text_size" />
+ <pad bytes="16" />
+ <list type="AttributeInfo" name="attributes">
+ <fieldref>num_attributes</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="ListImageFormats" opcode="16">
+ <field type="PORT" name="port" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num_formats" />
+ <pad bytes="20" />
+ <list type="ImageFormatInfo" name="format">
+ <fieldref>num_formats</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="QueryImageAttributes" opcode="17">
+ <field type="PORT" name="port" />
+ <field type="CARD32" name="id" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num_planes" />
+ <field type="CARD32" name="data_size" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <pad bytes="12" />
+ <list type="CARD32" name="pitches">
+ <fieldref>num_planes</fieldref>
+ </list>
+ <list type="CARD32" name="offsets">
+ <fieldref>num_planes</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="PutImage" opcode="18">
+ <field type="PORT" name="port" />
+ <field type="DRAWABLE" name="drawable" />
+ <field type="GCONTEXT" name="gc" />
+ <field type="CARD32" name="id" />
+ <field type="INT16" name="src_x" />
+ <field type="INT16" name="src_y" />
+ <field type="CARD16" name="src_w" />
+ <field type="CARD16" name="src_h" />
+ <field type="INT16" name="drw_x" />
+ <field type="INT16" name="drw_y" />
+ <field type="CARD16" name="drw_w" />
+ <field type="CARD16" name="drw_h" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <localfield type="CARD32" name="data_size" />
+ <list type="CARD8" name="data">
+ <fieldref>data_size</fieldref>
+ </list>
+ </request>
+
+ <request name="ShmPutImage" opcode="19">
+ <field type="PORT" name="port" />
+ <field type="DRAWABLE" name="drawable" />
+ <field type="GCONTEXT" name="gc" />
+ <field type="SEG" name="shmseg" />
+ <field type="CARD32" name="id" />
+ <field type="CARD32" name="offset" />
+ <field type="INT16" name="src_x" />
+ <field type="INT16" name="src_y" />
+ <field type="CARD16" name="src_w" />
+ <field type="CARD16" name="src_h" />
+ <field type="INT16" name="drw_x" />
+ <field type="INT16" name="drw_y" />
+ <field type="CARD16" name="drw_w" />
+ <field type="CARD16" name="drw_h" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <field type="CARD8" name="send_event" />
+ </request>
+</xcb>
diff --git a/src/xvmc.xml b/src/xvmc.xml
new file mode 100644
index 0000000..e2eb04d
--- /dev/null
+++ b/src/xvmc.xml
@@ -0,0 +1,140 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2006 Jeremy Kolb.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+
+<xcb header="xvmc" extension-xname="XVideo-MotionCompensation" extension-name="XvMC">
+ <import>xv</import>
+
+ <xidtype name="CONTEXT" />
+ <xidtype name="SURFACE" />
+ <xidtype name="SUBPICTURE" />
+
+ <struct name="SurfaceInfo">
+ <field type="SURFACE" name="id" />
+ <field type="CARD16" name="chroma_format" />
+ <field type="CARD16" name="pad0" />
+ <field type="CARD16" name="max_width" />
+ <field type="CARD16" name="max_height" />
+ <field type="CARD16" name="subpicture_max_width" />
+ <field type="CARD16" name="subpicture_max_height" />
+ <field type="CARD32" name="mc_type" />
+ <field type="CARD32" name="flags" />
+ </struct>
+
+ <request name="QueryVersion" opcode="0">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="major" />
+ <field type="CARD32" name="minor" />
+ </reply>
+ </request>
+
+ <request name="ListSurfaceTypes" opcode="1">
+ <field type="PORT" name="port_id" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num" />
+ <pad bytes="20" />
+ <list type="SurfaceInfo" name="surfaces">
+ <fieldref>num</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="CreateContext" opcode="2">
+ <field type="CONTEXT" name="context_id" />
+ <field type="PORT" name="port_id" />
+ <field type="SURFACE" name="surface_id" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <field type="CARD32" name="flags" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="width_actual" />
+ <field type="CARD16" name="height_actual" />
+ <field type="CARD32" name="flags_return" />
+ <pad bytes="20" />
+ <list type="CARD32" name="priv_data" />
+ </reply>
+ </request>
+
+ <request name="DestroyContext" opcode="3">
+ <field type="CONTEXT" name="context_id" />
+ </request>
+
+ <request name="CreateSurface" opcode="4">
+ <field type="SURFACE" name="surface_id" />
+ <field type="CONTEXT" name="context_id" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="24" />
+ <list type="CARD32" name="priv_data" />
+ </reply>
+ </request>
+
+ <request name="DestroySurface" opcode="5">
+ <field type="SURFACE" name="surface_id" />
+ </request>
+
+ <request name="CreateSubpicture" opcode="6">
+ <field type="SUBPICTURE" name="subpicture_id" />
+ <field type="CONTEXT" name="context" />
+ <field type="CARD32" name="xvimage_id" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="width_actual" />
+ <field type="CARD16" name="height_actual" />
+ <field type="CARD16" name="num_palette_entries" />
+ <field type="CARD16" name="entry_bytes" />
+ <list type="CARD8" name="component_order">
+ <value>4</value>
+ </list>
+ <pad bytes="12" />
+ <list type="CARD32" name="priv_data" />
+ </reply>
+ </request>
+
+ <request name="DestroySubpicture" opcode="7">
+ <field type="SUBPICTURE" name="subpicture_id" />
+ </request>
+
+ <request name="ListSubpictureTypes" opcode="8">
+ <field type="PORT" name="port_id" />
+ <field type="SURFACE" name="surface_id" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="num" />
+ <pad bytes="20" />
+ <list type="ImageFormatInfo" name="types">
+ <fieldref>num</fieldref>
+ </list>
+ </reply>
+ </request>
+
+</xcb>
diff-tree 39a58929682650c0761e3ccfe2f10978ec5f0b74 (from 01c0c9eda8e4fb9fe0135f4e447c5fa7c18bf2e6)
Author: Jeremy Kolb <jkolb at brandeis.edu>
Date: Thu Oct 12 23:54:51 2006 -0400
Oops. keithp told me to forget about videmode.
diff --git a/src/Makefile.am b/src/Makefile.am
index e21223b..20225fa 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -18,7 +18,6 @@ xcbinclude_HEADERS = \
extensions/xevie.xml \
extensions/xinerama.xml \
extensions/xf86dri.xml \
- extensions/xf86vidmode.xml \
extensions/xfixes.xml \
extensions/xprint.xml \
extensions/xtest.xml \
diff-tree 01c0c9eda8e4fb9fe0135f4e447c5fa7c18bf2e6 (from 790dd5c68bdf38df4c4e364091cc5becd68661a8)
Author: Jeremy Kolb <jkolb at brandeis.edu>
Date: Thu Oct 12 23:51:18 2006 -0400
The Xinerama extension 1.1.
diff --git a/src/Makefile.am b/src/Makefile.am
index daf6623..e21223b 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -16,7 +16,9 @@ xcbinclude_HEADERS = \
extensions/sync.xml \
extensions/xc_misc.xml \
extensions/xevie.xml \
+ extensions/xinerama.xml \
extensions/xf86dri.xml \
+ extensions/xf86vidmode.xml \
extensions/xfixes.xml \
extensions/xprint.xml \
extensions/xtest.xml \
diff --git a/src/extensions/xinerama.xml b/src/extensions/xinerama.xml
new file mode 100644
index 0000000..2566787
--- /dev/null
+++ b/src/extensions/xinerama.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2006 Jeremy Kolb.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+
+<xcb header="xinerama" extension-xname="XINERAMA" extension-name="Xinerama">
+
+ <!-- Version 1.1 -->
+
+ <import>xproto</import>
+
+ <struct name="ScreenInfo">
+ <field type="INT16" name="x_org" />
+ <field type="INT16" name="y_org" />
+ <field type="CARD16" name="width" />
+ <field type="CARD16" name="height" />
+ </struct>
+
+ <request name="QueryVersion" opcode="0">
+ <field type="CARD8" name="major" />
+ <field type="CARD8" name="minor" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD16" name="major" />
+ <field type="CARD16" name="minor" />
+ </reply>
+ </request>
+
+ <request name="GetState" opcode="1">
+ <field type="WINDOW" name="window" />
+ <reply>
+ <field type="BYTE" name="state" />
+ <field type="WINDOW" name="window" />
+ </reply>
+ </request>
+
+ <request name="GetScreenCount" opcode="2">
+ <field type="WINDOW" name="window" />
+ <reply>
+ <field type="BYTE" name="screen_count" />
+ <field type="WINDOW" name="window" />
+ </reply>
+ </request>
+
+ <request name="GetScreenSize" opcode="3">
+ <field type="WINDOW" name="window" />
+ <field type="SCREEN" name="screen" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="width" />
+ <field type="CARD32" name="height" />
+ <field type="WINDOW" name="window" />
+ <field type="SCREEN" name="screen" />
+ </reply>
+ </request>
+
+ <request name="IsActive" opcode="4">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="state" />
+ </reply>
+ </request>
+
+ <request name="QueryScreens" opcode="5">
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="number" />
+ <pad bytes="20" />
+ <list type="ScreenInfo" name="screen_info">
+ <fieldref>number</fieldref>
+ </list>
+ </reply>
+ </request>
+
+</xcb>
diff-tree 790dd5c68bdf38df4c4e364091cc5becd68661a8 (from 2f065ed8c9e96d4f8c6555f6c7e97b362808dfaa)
Author: Ian Osgood <iano at quirkster.com>
Date: Sun Oct 8 08:57:30 2006 -0700
Add REPEAT enumeration to fix bug #8535.
diff --git a/src/extensions/render.xml b/src/extensions/render.xml
index 7dbf926..88e9a40 100644
--- a/src/extensions/render.xml
+++ b/src/extensions/render.xml
@@ -93,6 +93,14 @@ for licensing information.
<item name="None" />
</enum>
+ <!-- Extended repeat attributes introduced in 0.10 -->
+ <enum name="Repeat">
+ <item name="None" />
+ <item name="Normal" />
+ <item name="Pad" />
+ <item name="Reflect" />
+ </enum>
+
<typedef oldname="CARD32" newname="GLYPH" />
<xidtype name="GLYPHSET" />
More information about the xcb-commit
mailing list