[Xcb-commit] Branch 'debian' - 12 commits - NEWS autogen.sh configure.ac debian src

Jamey Sharp jamey at kemper.freedesktop.org
Sat Dec 1 12:32:57 PST 2007


 NEWS             |   20 ++
 autogen.sh       |   11 +
 configure.ac     |    2 
 debian/changelog |    6 
 src/bigreq.xml   |    2 
 src/damage.xml   |   13 +
 src/randr.xml    |  411 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
 src/sync.xml     |    2 
 src/xc_misc.xml  |    2 
 src/xcb.xsd      |    1 
 src/xprint.xml   |    2 
 src/xproto.xml   |    5 
 12 files changed, 444 insertions(+), 33 deletions(-)

New commits:
commit 12c170e5e5ab496bfad67f4f8f56c5fe0cac18f2
Author: Jamey Sharp <jamey at minilop.net>
Date:   Sat Dec 1 12:32:38 2007 -0800

    Bugfix: GetKeyboardMapping's keysyms list had the wrong length.

diff --git a/src/xproto.xml b/src/xproto.xml
index 8254d11..0b796a9 100644
--- a/src/xproto.xml
+++ b/src/xproto.xml
@@ -2014,10 +2014,7 @@ authorization from the authors.
       <field type="BYTE" name="keysyms_per_keycode" />
       <pad bytes="24" />
       <list type="KEYSYM" name="keysyms">
-        <op op="*">
-          <fieldref>length</fieldref>
-          <value>4</value>
-        </op>
+        <fieldref>length</fieldref>
       </list>
     </reply>
   </request>
commit 90a6128553986eea05688b71af852a72ac76134c
Author: Jamey Sharp <jamey at minilop.net>
Date:   Tue Nov 6 21:44:31 2007 -0800

    Debian package version 1.1-1

diff --git a/debian/changelog b/debian/changelog
index 98b66a7..d6c51dd 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+xcb-proto (1.1-1) unstable; urgency=low
+
+  * New upstream release.
+
+ -- Jamey Sharp <sharpone at debian.org>  Tue, 06 Nov 2007 13:37:24 -0800
+
 xcb-proto (1.0-2) unstable; urgency=low
 
   * Change XS-X-Vcs-Git to XS-Vcs-Git.
commit a8392665bc51325189b30e77dfca42de5ea2b685
Merge: 855f1f1... 6caf9bd...
Author: Jamey Sharp <jamey at minilop.net>
Date:   Mon Nov 5 16:38:25 2007 -0800

    Merge branch 'master' into debian

commit 6caf9bd62576149d06762ffc00883e422786833d
Author: Jamey Sharp <jamey at minilop.net>
Date:   Sun Nov 4 14:17:52 2007 -0800

    Release xcb-proto 1.1

diff --git a/NEWS b/NEWS
index 10a2284..302e7c4 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,23 @@
+Release 1.1 (2007-11-04)
+========================
+
+Incompatible change to the XML schema: rather than special-casing the
+treatment of protocol extension names, use the new extension-multiword
+attribute.  Normally, XCB prefixes C extension functions with
+xcb_extname_.  However, some of the existing extensions used multi-word
+names, such as xcb_big_requests_ or xcb_xc_misc_. Those extensions now
+use this attribute to match their existing defined API.  This allows the
+XCB code generator to avoid special-casing those extension names.
+
+Protocol updates:
+* Update DAMAGE to 1.1
+* Update RandR to version 1.2
+
+Bug fixes:
+* fix XSync Initialize call
+* Update autogen.sh to one that does objdir != srcdir.
+
+
 Release 1.0 (2006-11-23)
 ========================
 
diff --git a/configure.ac b/configure.ac
index 8b94249..124d3fa 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,7 +3,7 @@
 
 AC_PREREQ(2.57)
 AC_INIT([XCB Proto],
-        1.0,
+        1.1,
         [xcb at lists.freedesktop.org])
 AC_CONFIG_SRCDIR([xcb-proto.pc.in])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
commit 6d21e886f2ef967e0ff1cac3762df6f8f6909991
Author: Rob Taylor <rob.taylor at codethink.co.uk>
Date:   Mon Aug 27 06:56:45 2007 -0700

    fix XSync Initialize call
    
    Initialize takes two CARD8 fields for desired Xsync version.

diff --git a/src/sync.xml b/src/sync.xml
index 74281f1..a60a81f 100644
--- a/src/sync.xml
+++ b/src/sync.xml
@@ -78,6 +78,8 @@ for licensing information.
   </error>
     
   <request name="Initialize" opcode="0">
+    <field type="CARD8" name="desired_major_version" />
+    <field type="CARD8" name="desired_minor_version" />
     <reply>
       <pad bytes="1" />
       <field type="CARD8" name="major_version" />
commit cb188ab9d7afb737a459d4d8105ce15fa00fdf0d
Author: Matthias Hopf <mhopf at suse.de>
Date:   Wed Apr 11 17:23:44 2007 +0200

    Update autogen.sh to one that does objdir != srcdir.

diff --git a/autogen.sh b/autogen.sh
index d68a142..904cd67 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -1,3 +1,12 @@
 #! /bin/sh
+
+srcdir=`dirname $0`
+test -z "$srcdir" && srcdir=.
+
+ORIGDIR=`pwd`
+cd $srcdir
+
 autoreconf -v --install || exit 1
-./configure "$@"
+cd $ORIGDIR || exit $?
+
+$srcdir/configure --enable-maintainer-mode "$@"
commit ea93d1b25b470d01931bc16130d3933b4b80498f
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Tue Apr 10 11:56:43 2007 -0400

    Modifies new attribute from previous patch so that it need only be used
    on extensions with split names.

diff --git a/src/bigreq.xml b/src/bigreq.xml
index d58a084..3cca2f7 100644
--- a/src/bigreq.xml
+++ b/src/bigreq.xml
@@ -26,7 +26,7 @@ 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"
+    extension-name="BigRequests" extension-multiword="true"
     major-version="0" minor-version="0">
 
   <request name="Enable" opcode="0">
diff --git a/src/randr.xml b/src/randr.xml
index 6a140de..352b1e1 100644
--- a/src/randr.xml
+++ b/src/randr.xml
@@ -27,7 +27,7 @@ authorization from the authors.
 -->
 
 <xcb header="randr" extension-xname="RANDR" extension-name="RandR"
-    extension-oneword="true" major-version="1" minor-version="2">
+    major-version="1" minor-version="2">
 
 	<import>xproto</import>
 	
diff --git a/src/screensaver.xml b/src/screensaver.xml
index 311475b..8acd292 100644
--- a/src/screensaver.xml
+++ b/src/screensaver.xml
@@ -29,7 +29,7 @@ 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" extension-oneword="true" major-version="1" minor-version="1">
+<xcb header="screensaver" extension-xname="MIT-SCREEN-SAVER" extension-name="ScreenSaver" major-version="1" minor-version="1">
 
   <!-- Types -->
 
diff --git a/src/xc_misc.xml b/src/xc_misc.xml
index 18f5a84..139ca22 100644
--- a/src/xc_misc.xml
+++ b/src/xc_misc.xml
@@ -5,7 +5,7 @@ All Rights Reserved.  See the file COPYING in this directory
 for licensing information.
 -->
 <xcb header="xc_misc" extension-xname="XC-MISC" extension-name="XCMisc"
-    major-version="1" minor-version="1">
+    extension-multiword="true" 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/xcb.xsd b/src/xcb.xsd
index ae62799..b40ee6a 100644
--- a/src/xcb.xsd
+++ b/src/xcb.xsd
@@ -33,7 +33,7 @@ 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="extension-oneword" type="xsd:boolean" use="optional" default="false" />
+      <xsd:attribute name="extension-multiword" type="xsd:boolean" use="optional" default="false" />
       <xsd:attribute name="major-version"   type="xsd:integer" use="optional" />
       <xsd:attribute name="minor-version"   type="xsd:integer" use="optional" />
     </xsd:complexType>
diff --git a/src/xf86dri.xml b/src/xf86dri.xml
index 65fbe55..c05b724 100644
--- a/src/xf86dri.xml
+++ b/src/xf86dri.xml
@@ -27,7 +27,7 @@ authorization from the authors.
 -->
 
 <xcb header="xf86dri" extension-xname="XFree86-DRI" extension-name="XF86Dri"
-    extension-oneword="true" major-version="4" minor-version="1">
+    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 7565920..203c2a8 100644
--- a/src/xfixes.xml
+++ b/src/xfixes.xml
@@ -26,7 +26,7 @@ authorization from the authors.
 -->
 <!-- This file describes version 4 of XFixes. -->
 <xcb header="xfixes" extension-xname="XFIXES" extension-name="XFixes"
-    extension-oneword="true" major-version="4" minor-version="0">
+    major-version="4" minor-version="0">
   <import>xproto</import>
   <import>render</import>
   <import>shape</import>
diff --git a/src/xprint.xml b/src/xprint.xml
index 040b353..1fa2ab6 100644
--- a/src/xprint.xml
+++ b/src/xprint.xml
@@ -27,7 +27,7 @@ authorization from the authors.
 -->
 
 <xcb header="xprint" extension-xname="XpExtension" extension-name="XPrint"
-    major-version="1" minor-version="0">
+    extension-multiword="true" major-version="1" minor-version="0">
 
     <!-- Conforms to XPRINT 1.0 -->
 
diff --git a/src/xvmc.xml b/src/xvmc.xml
index 40dce26..ecfafea 100644
--- a/src/xvmc.xml
+++ b/src/xvmc.xml
@@ -26,7 +26,7 @@ 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" extension-oneword="true" major-version="1" minor-version="1">
+<xcb header="xvmc" extension-xname="XVideo-MotionCompensation" extension-name="XvMC" major-version="1" minor-version="1">
     <import>xv</import>
 
     <xidtype name="CONTEXT" />
commit 35ea50bc6a001181eb9a8c658fbcdf5f075bf6c4
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Thu Mar 29 12:26:28 2007 -0700

    Introduces attribute to schema and modifies currently special-cased
    protocol descriptions to use it.

diff --git a/src/randr.xml b/src/randr.xml
index 352b1e1..6a140de 100644
--- a/src/randr.xml
+++ b/src/randr.xml
@@ -27,7 +27,7 @@ authorization from the authors.
 -->
 
 <xcb header="randr" extension-xname="RANDR" extension-name="RandR"
-    major-version="1" minor-version="2">
+    extension-oneword="true" major-version="1" minor-version="2">
 
 	<import>xproto</import>
 	
diff --git a/src/screensaver.xml b/src/screensaver.xml
index 8acd292..311475b 100644
--- a/src/screensaver.xml
+++ b/src/screensaver.xml
@@ -29,7 +29,7 @@ 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" major-version="1" minor-version="1">
+<xcb header="screensaver" extension-xname="MIT-SCREEN-SAVER" extension-name="ScreenSaver" extension-oneword="true" major-version="1" minor-version="1">
 
   <!-- Types -->
 
diff --git a/src/xcb.xsd b/src/xcb.xsd
index 674a185..ae62799 100644
--- a/src/xcb.xsd
+++ b/src/xcb.xsd
@@ -33,6 +33,7 @@ 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="extension-oneword" type="xsd:boolean" use="optional" default="false" />
       <xsd:attribute name="major-version"   type="xsd:integer" use="optional" />
       <xsd:attribute name="minor-version"   type="xsd:integer" use="optional" />
     </xsd:complexType>
diff --git a/src/xf86dri.xml b/src/xf86dri.xml
index c05b724..65fbe55 100644
--- a/src/xf86dri.xml
+++ b/src/xf86dri.xml
@@ -27,7 +27,7 @@ authorization from the authors.
 -->
 
 <xcb header="xf86dri" extension-xname="XFree86-DRI" extension-name="XF86Dri"
-    major-version="4" minor-version="1">
+    extension-oneword="true" 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 203c2a8..7565920 100644
--- a/src/xfixes.xml
+++ b/src/xfixes.xml
@@ -26,7 +26,7 @@ authorization from the authors.
 -->
 <!-- This file describes version 4 of XFixes. -->
 <xcb header="xfixes" extension-xname="XFIXES" extension-name="XFixes"
-    major-version="4" minor-version="0">
+    extension-oneword="true" major-version="4" minor-version="0">
   <import>xproto</import>
   <import>render</import>
   <import>shape</import>
diff --git a/src/xvmc.xml b/src/xvmc.xml
index ecfafea..40dce26 100644
--- a/src/xvmc.xml
+++ b/src/xvmc.xml
@@ -26,7 +26,7 @@ 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" major-version="1" minor-version="1">
+<xcb header="xvmc" extension-xname="XVideo-MotionCompensation" extension-name="XvMC" extension-oneword="true" major-version="1" minor-version="1">
     <import>xv</import>
 
     <xidtype name="CONTEXT" />
commit dc8737707ef3651aca8194f2d96df54b8d00abe4
Author: Jeremy Kolb <jkolb at brandeis.edu>
Date:   Mon Feb 12 19:49:12 2007 -0500

    Update DAMAGE to 1.1

diff --git a/src/damage.xml b/src/damage.xml
index 4e03057..378e3ac 100644
--- a/src/damage.xml
+++ b/src/damage.xml
@@ -1,6 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-Copyright (C) 2004 Josh Triplett.  All Rights Reserved.
+Copyright (C) 2004 Josh Triplett
+Copyright (C) 2007 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
@@ -24,9 +26,9 @@ 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. -->
+<!-- This file describes version 1.1 of DAMAGE. -->
 <xcb header="damage" extension-xname="DAMAGE" extension-name="Damage"
-    major-version="1" minor-version="0">
+    major-version="1" minor-version="1">
   <import>xproto</import>
   <import>xfixes</import>
 
@@ -69,6 +71,11 @@ authorization from the authors.
     <field type="REGION" name="parts" />
   </request>
 
+  <request name="Add" opcode="4">
+    <field type="DRAWABLE" name="drawable" />
+    <field type="REGION" name="region" />
+  </request>
+
   <event name="Notify" number="0">
     <field type="CARD8"     name="level" /> <!-- ReportLevel -->
     <field type="DRAWABLE"  name="drawable" />
commit e7f9e65036490e7a5f70166d16414432bfff194d
Author: Ian Osgood <iano at quirkster.com>
Date:   Sat Dec 2 08:54:14 2006 -0800

    Use lowercase for field names.

diff --git a/src/randr.xml b/src/randr.xml
index c613705..352b1e1 100644
--- a/src/randr.xml
+++ b/src/randr.xml
@@ -146,10 +146,10 @@ authorization from the authors.
 		<field type="WINDOW" name="window" />
 		<reply>
 			<pad bytes="1" />
-			<field type="CARD16" name="minWidth" />
-			<field type="CARD16" name="minHeight" />
-			<field type="CARD16" name="maxWidth" />
-			<field type="CARD16" name="maxHeight" />
+			<field type="CARD16" name="min_width" />
+			<field type="CARD16" name="min_height" />
+			<field type="CARD16" name="max_width" />
+			<field type="CARD16" name="max_height" />
 		</reply>
 	</request>
 
@@ -157,8 +157,8 @@ authorization from the authors.
 		<field type="WINDOW" name="window" />
 		<field type="CARD16" name="width" />    <!-- pixels -->
 		<field type="CARD16" name="height" />
-		<field type="CARD32" name="mmWidth" />  <!-- millimeters -->
-		<field type="CARD32" name="mmHeight" />
+		<field type="CARD32" name="mm_width" />  <!-- millimeters -->
+		<field type="CARD32" name="mm_height" />
 	</request>
 
 	<!-- for GetScreenResources.ModeInfo.ModeFlag -->
@@ -183,16 +183,16 @@ authorization from the authors.
 		<field type="CARD32" name="id" />
 		<field type="CARD16" name="width" />
 		<field type="CARD16" name="height" />
-		<field type="CARD32" name="dotClock" />
-		<field type="CARD16" name="hsyncStart" />
-		<field type="CARD16" name="hsyncEnd" />
+		<field type="CARD32" name="dot_clock" />
+		<field type="CARD16" name="hsync_start" />
+		<field type="CARD16" name="hsync_end" />
 		<field type="CARD16" name="htotal" />
 		<field type="CARD16" name="hskew" />
-		<field type="CARD16" name="vsyncStart" />
-		<field type="CARD16" name="vsyncEnd" />
+		<field type="CARD16" name="vsync_start" />
+		<field type="CARD16" name="vsync_end" />
 		<field type="CARD16" name="vtotal" />
 		<field type="CARD16" name="name_len" />
-		<field type="CARD32" name="modeFlags" />	<!-- enum ModeFlag -->
+		<field type="CARD32" name="mode_flags" />	<!-- enum ModeFlag -->
 		<!-- the mode name itself -->
 	</struct>
 
@@ -234,15 +234,15 @@ authorization from the authors.
 
 	<request name="GetOutputInfo" opcode="9">
 		<field type="CARD32" name="output" />
-		<field type="TIMESTAMP" name="configTimestamp" />
+		<field type="TIMESTAMP" name="config_timestamp" />
 		<reply>
 			<field type="CARD8" name="status" />	<!-- enum SetConfig -->
 			<field type="TIMESTAMP" name="timestamp" />
 			<field type="CARD32" name="crtc" />
-			<field type="CARD32" name="mmWidth" />  <!-- millimeters -->
-			<field type="CARD32" name="mmHeight" />
+			<field type="CARD32" name="mm_width" />  <!-- millimeters -->
+			<field type="CARD32" name="mm_height" />
 			<field type="CARD8" name="connection" /> <!-- enum Connection -->
-			<field type="CARD8" name="subpixelOrder" />
+			<field type="CARD8" name="subpixel_order" />
 			<field type="CARD16" name="num_crtcs" />
 			<field type="CARD16" name="num_modes" />
 			<field type="CARD16" name="num_preferred" />
@@ -316,14 +316,14 @@ authorization from the authors.
 		<field type="CARD32" name="output" />
 		<field type="ATOM" name="property" />
 		<field type="ATOM" name="type" />
-		<field type="CARD32" name="longOffset" />
-		<field type="CARD32" name="longLength" />
+		<field type="CARD32" name="long_offset" />
+		<field type="CARD32" name="long_length" />
 		<field type="BOOL" name="delete" />
 		<field type="BOOL" name="pending" />
 		<reply>
 			<field type="CARD8" name="format" />
 			<field type="ATOM" name="type" />
-			<field type="CARD32" name="bytesAfter" />
+			<field type="CARD32" name="bytes_after" />
 			<field type="CARD32" name="num_items" />
 			<pad bytes="12" />
 			<list type="BYTE" name="data">
@@ -341,7 +341,7 @@ authorization from the authors.
 
 	<request name="CreateMode" opcode="16">
 		<field type="WINDOW" name="window" />
-		<field type="ModeInfo" name="modeInfo" />
+		<field type="ModeInfo" name="mode_info" />
 		<reply>
 			<field type="CARD8" name="status" />	<!-- enum SetConfig -->
 			<field type="CARD32" name="mode" />
@@ -364,7 +364,7 @@ authorization from the authors.
 
 	<request name="GetCrtcInfo" opcode="20">
 		<field type="CARD32" name="crtc" />
-		<field type="TIMESTAMP" name="configTimestamp" />
+		<field type="TIMESTAMP" name="config_timestamp" />
 		<reply>
 			<field type="CARD8" name="status" />	<!-- enum SetConfig -->
 			<field type="TIMESTAMP" name="timestamp" />
@@ -387,7 +387,7 @@ authorization from the authors.
 	<request name="SetCrtcConfig" opcode="21">
 		<field type="CARD32" name="crtc" />
 		<field type="TIMESTAMP" name="timestamp" />
-		<field type="TIMESTAMP" name="configTimestamp" />
+		<field type="TIMESTAMP" name="config_timestamp" />
 		<field type="INT16" name="x" />
 		<field type="INT16" name="y" />
 		<field type="CARD32" name="mode" />
@@ -459,8 +459,8 @@ authorization from the authors.
 		<field type="CARD16" name="subpixel_order" />
 		<field type="CARD16" name="width" />
 		<field type="CARD16" name="height" />
-		<field type="CARD16" name="mmWidth" />
-		<field type="CARD16" name="mmHeight" />
+		<field type="CARD16" name="mwidth" />
+		<field type="CARD16" name="mheight" />
 	</event>
 
 	<!-- New in version 1.2 -->
@@ -487,14 +487,14 @@ authorization from the authors.
 
 	<struct name="OutputChange">
 		<field type="TIMESTAMP" name="timestamp" />
-		<field type="TIMESTAMP" name="configTimestamp" />
+		<field type="TIMESTAMP" name="config_timestamp" />
 		<field type="WINDOW" name="window" />
 		<field type="CARD32" name="output" />
 		<field type="CARD32" name="crtc" />
 		<field type="CARD32" name="mode" />
 		<field type="CARD16" name="rotation" />		<!-- enum Rotation -->
 		<field type="CARD8" name="connection" />	<!-- enum Connection -->
-		<field type="CARD8" name="subpixelOrder" />
+		<field type="CARD8" name="subpixel_order" />
 	</struct>
 
 	<struct name="OutputProperty">
commit 0561900cfe6738329dd271df93f38fec8f538789
Author: Ian Osgood <iano at quirkster.com>
Date:   Sat Dec 2 08:42:24 2006 -0800

    Fix ListOutputProperties protocol.

diff --git a/src/randr.xml b/src/randr.xml
index ab58f80..c613705 100644
--- a/src/randr.xml
+++ b/src/randr.xml
@@ -263,15 +263,14 @@ authorization from the authors.
 		</reply>
 	</request>
 
-	<!-- NOTE: num_atoms is currently unused. -->
 	<request name="ListOutputProperties" opcode="10">
 		<field type="CARD32" name="output" />
 		<reply>
-			<field type="CARD8" name="num_properties" />
+			<pad bytes="1" />
 			<field type="CARD16" name="num_atoms" />
 			<pad bytes="22" />
-			<list type="ATOM" name="properties">
-				<fieldref>num_properties</fieldref>
+			<list type="ATOM" name="atoms">
+				<fieldref>num_atoms</fieldref>
 			</list>
 		</reply>
 	</request>
commit 37b681288c18754037a00d1765fdbde456b1c1a5
Author: Ian Osgood <iano at quirkster.com>
Date:   Thu Nov 30 12:01:22 2006 -0800

    Update RandR to version 1.2

diff --git a/src/randr.xml b/src/randr.xml
index 8a46f3c..ab58f80 100644
--- a/src/randr.xml
+++ b/src/randr.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-Copyright (C) 2005 Jeremy Kolb.
+Copyright (C) 2006 Jeremy Kolb, Ian Osgood
 All Rights Reserved.
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -27,24 +27,31 @@ authorization from the authors.
 -->
 
 <xcb header="randr" extension-xname="RANDR" extension-name="RandR"
-    major-version="1" minor-version="1">
-	<!-- Implements version 1.1 of RANDR -->	
+    major-version="1" minor-version="2">
 
 	<import>xproto</import>
+	
+	<!-- Errors -->
+
+	<error name="BadOutput" number="0" />
+	<error name="BadCrtc"   number="1" />
+	<error name="BadMode"   number="2" />
+
+	<!-- Requests -->
 
 	<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>
+		<item name="Rotate_0">  <bit>0</bit></item>
+		<item name="Rotate_90"> <bit>1</bit></item>
+		<item name="Rotate_180"><bit>2</bit></item>
+		<item name="Rotate_270"><bit>3</bit></item>
+		<item name="Reflect_X"> <bit>4</bit></item>
+		<item name="Reflect_Y"> <bit>5</bit></item>
 	</enum>
 
 	<struct name="ScreenSize">
-		<field type="INT16" name="width" />
+		<field type="INT16" name="width" />   <!-- pixels -->
 		<field type="INT16" name="height" />
-		<field type="INT16" name="mwidth" />
+		<field type="INT16" name="mwidth" />  <!-- millimeters -->
 		<field type="INT16" name="mheight" />
 	</struct>
 	
@@ -54,7 +61,7 @@ authorization from the authors.
 			<fieldref>nRates</fieldref>
 		</list>
 	</struct>
-
+	
 	<request name="QueryVersion" opcode="0">
 		<field type="CARD32" name="major_version" />
 		<field type="CARD32" name="minor_version" />
@@ -65,6 +72,8 @@ authorization from the authors.
 			<pad bytes="16" />
 		</reply>
 	</request>
+	
+	<!-- Skip obsolete opcode 1 so old clients fail immediately -->
 
 	<!-- 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.
@@ -79,7 +88,7 @@ authorization from the authors.
 		<field type="CARD16" name="rate" />
 		<pad bytes="2" />
 		<reply>
-			<field type="CARD8" name="status" />
+			<field type="CARD8" name="status" />	<!-- enum SetConfig -->
 			<field type="TIMESTAMP" name="new_timestamp" />
 			<field type="TIMESTAMP" name="config_timestamp" />
 			<field type="WINDOW" name="root" />
@@ -87,6 +96,8 @@ authorization from the authors.
 			<pad bytes="10" />
 		</reply>
 	</request>
+	
+	<!-- opcode 3 is obsolete -->
 
 	<enum name="SetConfig">
 		<item name="Success"><value>0</value></item>
@@ -97,7 +108,7 @@ authorization from the authors.
 
 	<request name="SelectInput" opcode="4">	
 		<field type="WINDOW" name="window" />
-		<field type="CARD16" name="enable" />
+		<field type="CARD16" name="enable" />  <!-- enum SetConfig -->
 		<pad bytes="2" />
 	</request>
 
@@ -129,8 +140,314 @@ authorization from the authors.
 		</reply>
 	</request>
 
-	<enum name="SM" >
-		<item name="ScreenChangeNotify"><value>1</value></item>
+	<!-- new in version 1.2 -->
+
+	<request name="GetScreenSizeRange" opcode="6">
+		<field type="WINDOW" name="window" />
+		<reply>
+			<pad bytes="1" />
+			<field type="CARD16" name="minWidth" />
+			<field type="CARD16" name="minHeight" />
+			<field type="CARD16" name="maxWidth" />
+			<field type="CARD16" name="maxHeight" />
+		</reply>
+	</request>
+
+	<request name="SetScreenSize" opcode="7">
+		<field type="WINDOW" name="window" />
+		<field type="CARD16" name="width" />    <!-- pixels -->
+		<field type="CARD16" name="height" />
+		<field type="CARD32" name="mmWidth" />  <!-- millimeters -->
+		<field type="CARD32" name="mmHeight" />
+	</request>
+
+	<!-- for GetScreenResources.ModeInfo.ModeFlag -->
+	<enum name="ModeFlag">
+		<item name="HsyncPositive"> <bit>0</bit></item>
+		<item name="HsyncNegative"> <bit>1</bit></item>
+		<item name="VsyncPositive"> <bit>2</bit></item>
+		<item name="VsyncNegative"> <bit>3</bit></item>
+		<item name="Interlace">     <bit>4</bit></item>
+		<item name="DoubleScan">    <bit>5</bit></item>
+		<item name="Csync">         <bit>6</bit></item>
+		<item name="CsyncPositive"> <bit>7</bit></item>
+		<item name="CsyncNegative"> <bit>8</bit></item>
+		<item name="HskewPresent">  <bit>9</bit></item>
+		<item name="Bcast">         <bit>10</bit></item>
+		<item name="PixelMultiplex"><bit>11</bit></item>
+		<item name="DoubleClock">   <bit>12</bit></item>
+		<item name="HalveClock">    <bit>13</bit></item>
+	</enum>
+
+	<struct name="ModeInfo">
+		<field type="CARD32" name="id" />
+		<field type="CARD16" name="width" />
+		<field type="CARD16" name="height" />
+		<field type="CARD32" name="dotClock" />
+		<field type="CARD16" name="hsyncStart" />
+		<field type="CARD16" name="hsyncEnd" />
+		<field type="CARD16" name="htotal" />
+		<field type="CARD16" name="hskew" />
+		<field type="CARD16" name="vsyncStart" />
+		<field type="CARD16" name="vsyncEnd" />
+		<field type="CARD16" name="vtotal" />
+		<field type="CARD16" name="name_len" />
+		<field type="CARD32" name="modeFlags" />	<!-- enum ModeFlag -->
+		<!-- the mode name itself -->
+	</struct>
+
+	<request name="GetScreenResources" opcode="8">
+		<field type="WINDOW" name="window" />
+		<reply>
+			<pad bytes="1" />
+			<field type="TIMESTAMP" name="timestamp" />
+			<field type="TIMESTAMP" name="config_timestamp" />
+			<field type="CARD16" name="num_crtcs" />
+			<field type="CARD16" name="num_outputs" />
+			<field type="CARD16" name="num_modes" />
+			<field type="CARD16" name="names_len" />
+			<pad bytes="8" />
+			<list type="CARD32" name="crtcs">
+			    <fieldref>num_crtcs</fieldref>
+			</list>
+			<list type="CARD32" name="outputs">
+			    <fieldref>num_outputs</fieldref>
+			</list>
+			<list type="ModeInfo" name="modes">
+			    <fieldref>num_modes</fieldref>
+			</list>
+			<!-- FIXME: this is *not* null separated!
+			     One must use ModeInfo.name_len from each previous
+			     ModeInfo to infer the position of the name. -->
+			<list type="BYTE" name="names">
+			    <fieldref>names_len</fieldref>
+			</list>
+		</reply>
+	</request>
+
+	<!-- for GetOutputInfo.connection -->
+	<enum name="Connection">
+		<item name="Connected" />
+		<item name="Disconnected" />
+		<item name="Unknown" />
+	</enum>
+
+	<request name="GetOutputInfo" opcode="9">
+		<field type="CARD32" name="output" />
+		<field type="TIMESTAMP" name="configTimestamp" />
+		<reply>
+			<field type="CARD8" name="status" />	<!-- enum SetConfig -->
+			<field type="TIMESTAMP" name="timestamp" />
+			<field type="CARD32" name="crtc" />
+			<field type="CARD32" name="mmWidth" />  <!-- millimeters -->
+			<field type="CARD32" name="mmHeight" />
+			<field type="CARD8" name="connection" /> <!-- enum Connection -->
+			<field type="CARD8" name="subpixelOrder" />
+			<field type="CARD16" name="num_crtcs" />
+			<field type="CARD16" name="num_modes" />
+			<field type="CARD16" name="num_preferred" />
+			<field type="CARD16" name="num_clones" />
+			<field type="CARD16" name="name_len" />
+			<list type="CARD32" name="crtcs">
+			    <fieldref>num_crtcs</fieldref>
+			</list>
+			<list type="CARD32" name="modes">
+			    <fieldref>num_modes</fieldref>
+			</list>
+			<list type="CARD32" name="clones">
+			    <fieldref>num_clones</fieldref>
+			</list>
+			<list type="BYTE" name="name">
+			    <fieldref>name_len</fieldref>
+			</list>
+		</reply>
+	</request>
+
+	<!-- NOTE: num_atoms is currently unused. -->
+	<request name="ListOutputProperties" opcode="10">
+		<field type="CARD32" name="output" />
+		<reply>
+			<field type="CARD8" name="num_properties" />
+			<field type="CARD16" name="num_atoms" />
+			<pad bytes="22" />
+			<list type="ATOM" name="properties">
+				<fieldref>num_properties</fieldref>
+			</list>
+		</reply>
+	</request>
+
+	<request name="QueryOutputProperty" opcode="11">
+		<field type="CARD32" name="output" />
+		<field type="ATOM" name="property" />
+		<reply>
+			<pad bytes="1" />
+			<field type="BOOL" name="pending" />
+			<field type="BOOL" name="range" />
+			<field type="BOOL" name="immutable" />
+			<pad bytes="21" />
+			<list type="INT32" name="validValues" />
+		</reply>
+	</request>
+
+	<request name="ConfigureOutputProperty" opcode="12">
+		<field type="CARD32" name="output" />
+		<field type="ATOM" name="property" />
+		<field type="BOOL" name="pending" />
+		<field type="BOOL" name="range" />
+		<pad bytes="2" />
+	</request>
+
+	<request name="ChangeOutputProperty" opcode="13">
+		<field type="CARD32" name="output" />
+		<field type="ATOM" name="property" />
+		<field type="ATOM" name="type" />
+		<field type="CARD8" name="format" />
+		<field type="CARD8" name="mode" />
+		<pad bytes="2" />
+		<field type="CARD32" name="num_units" />
+	</request>
+
+	<request name="DeleteOutputProperty" opcode="14">
+		<field type="CARD32" name="output" />
+		<field type="ATOM" name="property" />
+	</request>
+
+	<!-- NOTE: num_items depends on format (8/16/32) -->
+	<request name="GetOutputProperty" opcode="15">
+		<field type="CARD32" name="output" />
+		<field type="ATOM" name="property" />
+		<field type="ATOM" name="type" />
+		<field type="CARD32" name="longOffset" />
+		<field type="CARD32" name="longLength" />
+		<field type="BOOL" name="delete" />
+		<field type="BOOL" name="pending" />
+		<reply>
+			<field type="CARD8" name="format" />
+			<field type="ATOM" name="type" />
+			<field type="CARD32" name="bytesAfter" />
+			<field type="CARD32" name="num_items" />
+			<pad bytes="12" />
+			<list type="BYTE" name="data">
+				<!-- n * format / 8 -->
+				<op op="*">
+					<fieldref>num_items</fieldref>
+					<op op="/">
+						<fieldref>format</fieldref>
+						<value>8</value>
+					</op>
+				</op>
+			</list>
+		</reply>
+	</request>
+
+	<request name="CreateMode" opcode="16">
+		<field type="WINDOW" name="window" />
+		<field type="ModeInfo" name="modeInfo" />
+		<reply>
+			<field type="CARD8" name="status" />	<!-- enum SetConfig -->
+			<field type="CARD32" name="mode" />
+		</reply>
+	</request>
+
+	<request name="DestroyMode" opcode="17">
+		<field type="CARD32" name="mode" />
+	</request>
+
+	<request name="AddOutputMode" opcode="18">
+		<field type="CARD32" name="output" />
+		<field type="CARD32" name="mode" />
+	</request>
+
+	<request name="DeleteOutputMode" opcode="19">
+		<field type="CARD32" name="output" />
+		<field type="CARD32" name="mode" />
+	</request>
+
+	<request name="GetCrtcInfo" opcode="20">
+		<field type="CARD32" name="crtc" />
+		<field type="TIMESTAMP" name="configTimestamp" />
+		<reply>
+			<field type="CARD8" name="status" />	<!-- enum SetConfig -->
+			<field type="TIMESTAMP" name="timestamp" />
+			<field type="CARD32" name="crtc" />
+			<field type="INT16" name="x" />
+			<field type="INT16" name="y" />
+			<field type="CARD16" name="width" />
+			<field type="CARD16" name="height" />
+			<field type="CARD32" name="mode" />
+			<field type="CARD16" name="rotation" />		<!-- enum Rotation -->
+			<field type="CARD16" name="rotations" />	<!-- mask of enum Rotation -->
+			<field type="CARD16" name="num_outputs" />
+			<field type="CARD16" name="num_possible_outputs" />
+			<list type="CARD32" name="outputs">
+				<fieldref>num_outputs</fieldref>
+			</list>
+		</reply>
+	</request>
+
+	<request name="SetCrtcConfig" opcode="21">
+		<field type="CARD32" name="crtc" />
+		<field type="TIMESTAMP" name="timestamp" />
+		<field type="TIMESTAMP" name="configTimestamp" />
+		<field type="INT16" name="x" />
+		<field type="INT16" name="y" />
+		<field type="CARD32" name="mode" />
+		<field type="CARD16" name="rotation" />		<!-- enum Rotation -->
+		<reply>
+			<field type="CARD8" name="status" />	<!-- enum SetConfig -->
+			<field type="TIMESTAMP" name="timestamp" />
+		</reply>
+	</request>
+
+	<request name="GetCrtcGammaSize" opcode="22">
+		<field type="CARD32" name="crtc" />
+		<reply>
+			<field type="CARD8" name="status" />	<!-- enum SetConfig -->
+			<field type="CARD16" name="size" />
+		</reply>
+	</request>
+
+	<request name="GetCrtcGamma" opcode="23">
+		<field type="CARD32" name="crtc" />
+		<reply>
+			<field type="CARD8" name="status" />	<!-- enum SetConfig -->
+			<field type="CARD16" name="size" />
+			<pad bytes="22" />
+			<list type="CARD16" name="red">
+				<fieldref>size</fieldref>
+			</list>
+			<list type="CARD16" name="green">
+				<fieldref>size</fieldref>
+			</list>
+			<list type="CARD16" name="blue">
+				<fieldref>size</fieldref>
+			</list>
+		</reply>
+	</request>
+
+	<request name="SetCrtcGamma" opcode="24">
+		<field type="CARD32" name="crtc" />
+		<field type="CARD16" name="size" />
+		<pad bytes="2"/>
+		<list type="CARD16" name="red">
+			<fieldref>size</fieldref>
+		</list>
+		<list type="CARD16" name="green">
+			<fieldref>size</fieldref>
+		</list>
+		<list type="CARD16" name="blue">
+			<fieldref>size</fieldref>
+		</list>
+	</request>
+
+	<!-- Events -->
+
+	<enum name="NotifyMask" >
+		<item name="ScreenChange">  <bit>0</bit></item>
+		<!-- new in 1.2 -->
+		<item name="CrtcChange">    <bit>1</bit></item>
+		<item name="OutputChange">  <bit>2</bit></item>
+		<item name="OutputProperty"><bit>3</bit></item>
 	</enum>
 	
 	<event name="ScreenChangeNotify" number="0">
@@ -141,10 +458,63 @@ authorization from the authors.
 		<field type="WINDOW" name="request_window" />
 		<field type="CARD16" name="sizeID" />
 		<field type="CARD16" name="subpixel_order" />
-		<field type="INT16" name="width" />
-		<field type="INT16" name="height" />
-		<field type="INT16" name="mwidth" />
-		<field type="INT16" name="mheight" />
+		<field type="CARD16" name="width" />
+		<field type="CARD16" name="height" />
+		<field type="CARD16" name="mmWidth" />
+		<field type="CARD16" name="mmHeight" />
+	</event>
+
+	<!-- New in version 1.2 -->
+
+	<!-- subcode -->
+	<enum name="Notify" >
+		<item name="CrtcChange">    <value>0</value></item>
+		<item name="OutputChange">  <value>1</value></item>
+		<item name="OutputProperty"><value>2</value></item>
+	</enum>
+
+	<struct name="CrtcChange">
+		<field type="TIMESTAMP" name="timestamp" />
+		<field type="WINDOW" name="window" />
+		<field type="CARD32" name="crtc" />
+		<field type="CARD32" name="mode" />
+		<field type="CARD16" name="rotation" />		<!-- enum Rotation -->
+		<pad bytes="2" />
+		<field type="INT16" name="x" />
+		<field type="INT16" name="y" />
+		<field type="CARD16" name="width" />
+		<field type="CARD16" name="height" />
+	</struct>
+
+	<struct name="OutputChange">
+		<field type="TIMESTAMP" name="timestamp" />
+		<field type="TIMESTAMP" name="configTimestamp" />
+		<field type="WINDOW" name="window" />
+		<field type="CARD32" name="output" />
+		<field type="CARD32" name="crtc" />
+		<field type="CARD32" name="mode" />
+		<field type="CARD16" name="rotation" />		<!-- enum Rotation -->
+		<field type="CARD8" name="connection" />	<!-- enum Connection -->
+		<field type="CARD8" name="subpixelOrder" />
+	</struct>
+
+	<struct name="OutputProperty">
+		<field type="WINDOW" name="window" />
+		<field type="CARD32" name="output" />
+		<field type="ATOM" name="atom" />
+		<field type="TIMESTAMP" name="timestamp" />
+		<field type="CARD8" name="status" />		<!-- core enum Property -->
+		<pad bytes="11" />
+	</struct>
+
+	<union name="NotifyData">
+		<field type="CrtcChange"     name="cc" />
+		<field type="OutputChange"   name="oc" />
+		<field type="OutputProperty" name="op" />
+	</union>
+
+	<event name="Notify" number="1">
+		<field type="CARD8" name="subCode" />		<!-- enum Notify -->
+		<field type="NotifyData" name="u" />
 	</event>
-		
 </xcb>


More information about the xcb-commit mailing list