proto/randrproto: Branch 'multi-monitor'

Keith Packard keithp at kemper.freedesktop.org
Mon Sep 18 09:42:08 EEST 2006


 randr.h        |    6 +++++-
 randrproto.h   |   42 ++++++++++++++++++++----------------------
 randrproto.txt |   22 ++++++++++++++++++----
 3 files changed, 43 insertions(+), 27 deletions(-)

New commits:
diff-tree ce292d7cad17be4b13e4b7fad27b0ecbed101689 (from d6992dd3b7fcf22e4d670b29e8d0e2aba0d8e81d)
Author: Keith Packard <keithp at neko.keithp.com>
Date:   Sun Sep 17 23:41:55 2006 -0700

    Fix various random typos found while attempting to use header files
    
    Fix RRNumberRequests
    Rename errors to include RR to avoid conflicting with Xi.
    Add RR to various request/reply structs (oops).
    Remove nOutputs from SetCrtcConfigReq -- length is sufficient.
    Remove bogus members from SetCrtcConfigReply.
    Add MODEOPTION. Document protocol error encoding.

diff --git a/randr.h b/randr.h
index 94ae3a5..6d9369f 100644
--- a/randr.h
+++ b/randr.h
@@ -43,7 +43,7 @@ typedef unsigned short	XRandrMonitor;
 
 #define RRNumberErrors		0
 #define RRNumberEvents		2
-#define RRNumberRequests	12
+#define RRNumberRequests	23
 
 #define X_RRQueryVersion	0
 /* we skip 1 to make old clients fail pretty immediately */
@@ -128,4 +128,8 @@ typedef unsigned short	XRandrMonitor;
 #define RR_Disconnected		1
 #define RR_UnknownConnection	2
 
+#define BadRROutput		0
+#define BadRRCrtc		1
+#define BadRRMode		2
+
 #endif	/* _RANDR_H_ */
diff --git a/randrproto.h b/randrproto.h
index 9249239..05327c4 100644
--- a/randrproto.h
+++ b/randrproto.h
@@ -327,8 +327,8 @@ typedef struct {
     CARD16	length B16;
     RROutput	output B32;
     Atom	property B32;
-} xDeleteOutputPropertyReq;
-#define sz_xDeleteOutputPropertyReq	12
+} xRRDeleteOutputPropertyReq;
+#define sz_xRRDeleteOutputPropertyReq	12
 
 typedef struct {
     CARD8	reqType;
@@ -342,8 +342,8 @@ typedef struct {
     BOOL	delete;
     CARD8	pad1;
     CARD16	pad2;
-} xGetOutputPropertyReq;
-#define sz_xGetOutputPropertyReq	28
+} xRRGetOutputPropertyReq;
+#define sz_xRRGetOutputPropertyReq	28
 
 typedef struct {
     BYTE	type;
@@ -356,8 +356,8 @@ typedef struct {
     CARD32	pad1 B32;
     CARD32	pad2 B32;
     CARD32	pad3 B32;
-} xGetOutputPropertyReply;
-#define sz_xGetOutputPropertyReply	32
+} xRRGetOutputPropertyReply;
+#define sz_xRRGetOutputPropertyReply	32
 
 typedef struct {
     CARD8	reqType;
@@ -414,8 +414,8 @@ typedef struct {
     CARD16	length B16;
     RRCrtc	crtc B32;
     Time	configTimestamp B32;
-} xGetCrtcInfoReq; 
-#define sz_xGetCrtcInfoReq		12
+} xRRGetCrtcInfoReq; 
+#define sz_xRRGetCrtcInfoReq		12
 
 typedef struct {
     BYTE	type;
@@ -447,7 +447,7 @@ typedef struct {
     INT16	y B16;
     RRMode	mode B32;
     Rotation	rotation B16;
-    CARD16	nOutputs B16;
+    CARD16	pad B16;
 } xRRSetCrtcConfigReq; 
 #define sz_xRRSetCrtcConfigReq		28
 
@@ -456,14 +456,12 @@ typedef struct {
     CARD8	status;
     CARD16	sequenceNumber B16;
     CARD32	length B32;
-    Time	timestamp B32;
-    CARD8	subpixelOrder;
-    CARD8	pad1;
-    CARD16	pad2 B16;
+    Time	newTimestamp B32;
+    CARD32	pad1 B32;
+    CARD32	pad2 B16;
     CARD32	pad3 B32;
     CARD32	pad4 B32;
     CARD32	pad5 B32;
-    CARD32	pad6 B32;
 } xRRSetCrtcConfigReply;
 #define sz_xRRSetCrtcConfigReply	32
 
@@ -472,8 +470,8 @@ typedef struct {
     CARD8	randrReqType;
     CARD16	length B16;
     RRCrtc	crtc B32;
-} xGetCrtcGammaSizeReq; 
-#define sz_xGetCrtcGammaSizeReq		8
+} xRRGetCrtcGammaSizeReq; 
+#define sz_xRRGetCrtcGammaSizeReq	8
 
 typedef struct {
     BYTE	type;
@@ -487,16 +485,16 @@ typedef struct {
     CARD16	pad4 B32;
     CARD16	pad5 B32;
     CARD16	pad6 B32;
-} xGetCrtcGammaSizeReply;
-#define sz_xGetCrtcGammaSizeReply	32
+} xRRGetCrtcGammaSizeReply;
+#define sz_xRRGetCrtcGammaSizeReply	32
 
 typedef struct {
     CARD8	reqType;
     CARD8	randrReqType;
     CARD16	length B16;
     RRCrtc	crtc B32;
-} xGetCrtcGammaReq; 
-#define sz_xGetCrtcGammaReq		8
+} xRRGetCrtcGammaReq; 
+#define sz_xRRGetCrtcGammaReq		8
 
 typedef struct {
     BYTE	type;
@@ -510,8 +508,8 @@ typedef struct {
     CARD16	pad4 B32;
     CARD16	pad5 B32;
     CARD16	pad6 B32;
-} xGetCrtcGammaReply;
-#define sz_xGetCrtcGammaReply		32
+} xRRGetCrtcGammaReply;
+#define sz_xRRGetCrtcGammaReply		32
 
 typedef struct {
     CARD8	reqType;
diff --git a/randrproto.txt b/randrproto.txt
index cd9bfff..c8d77a2 100644
--- a/randrproto.txt
+++ b/randrproto.txt
@@ -245,6 +245,10 @@ MODEFLAG { HSyncPositive
 	   DoubleClock
 	   ClockDivideBy2 }
 
+MODEOPTION { ScalingNone,
+	     ScalingMaxAspect,
+	     ScalingMax }
+
 MODEINFO { id: MODE
 	   name: STRING
            widthInPixels, heightInPixels: CARD16
@@ -252,7 +256,8 @@ MODEINFO { id: MODE
            dotClock: CARD32
            hSyncStart, hSyncEnd, hTotal, hSkew: CARD16
            vSyncStart, vSyncEnd, vTotal: CARD16
-           modeFlags: SETofMODEFLAG }
+           modeFlags: SETofMODEFLAG
+	   modeOptions: SETofMODEOPTION }
 
 REFRESH { rates: LISTofCARD16 }
 
@@ -774,6 +779,7 @@ dynamic changes in the display environme
 	config-timestamp: TIMESTAMP
 	x, y: INT16
 	mode: MODE
+	options: SETofMODEOPTION
 	rotation: ROTATION
 	outputs: LISTofOUTPUT
       â–¶
@@ -1495,7 +1501,7 @@ A.2.1 Protocol Requests added with versi
 	2	INT16			y
 	4	MODE			mode
 	2	ROTATION		rotation/reflection
-	2	n			number of outputs
+	2				unused
 	4n	LISTofOUTPUT		outputs
       â–¶
 	1	1			Reply
@@ -1503,8 +1509,7 @@ A.2.1 Protocol Requests added with versi
 	2	CARD16			sequence number
 	4	0			reply length
 	4	TIMESTAMP		new timestamp
-	1	SUBPIXELORDER		subpixel order
-	19				unused
+	20				unused
 └───
 ┌───
     RRGetCrtcGammaSize
@@ -1617,6 +1622,15 @@ A.3.1 Protocol Events added with version
 	11				unused
 └───
 
+A.4 Protocol Errors
+
+┌───
+    ERRORS
+	Base + 0		Output
+	Base + 1		Crtc
+	Base + 2		Mode
+└───
+	
 Bibliography
 
 [RANDR] Gettys, Jim and Keith Packard, "The X Resize and Rotate



More information about the xorg-commit mailing list