proto/randrproto: Branch 'multi-monitor'

Keith Packard keithp at kemper.freedesktop.org
Wed Nov 1 10:24:39 EET 2006


 randrproto.h   |   10 +++++-----
 randrproto.txt |   12 +++++++++---
 2 files changed, 14 insertions(+), 8 deletions(-)

New commits:
diff-tree 0e858436af67256c0af49317183df4bf8092183c (from 369d4e7d2030c707cf2ce37d06c1d23b0570910c)
Author: Keith Packard <keithp at mandolin.keithp.com>
Date:   Wed Nov 1 00:23:37 2006 -0800

    Move physical size information from mode to output.
    
    Modes are stored in CRTCs which have no physical size.
    Outputs have a physical size which can change, both in response
    to mode changes as well as (potentially) other factors.
    
    Placing the physical size information in the output also permits clone
    mode to work across monitors of differing physical size.

diff --git a/randrproto.h b/randrproto.h
index 90549bd..cff3061 100644
--- a/randrproto.h
+++ b/randrproto.h
@@ -183,8 +183,6 @@ typedef struct _xRRModeInfo {
     RRMode		id B32;
     CARD16		width B16;
     CARD16		height B16;
-    CARD32		mmWidth B32;
-    CARD32		mmHeight B32;
     CARD32		dotClock B32;
     CARD16		hSyncStart B16;
     CARD16		hSyncEnd B16;
@@ -196,7 +194,7 @@ typedef struct _xRRModeInfo {
     CARD16		nameLength B16;
     RRModeFlags		modeFlags B32;
 } xRRModeInfo;
-#define sz_xRRModeInfo		    40
+#define sz_xRRModeInfo		    32
 
 typedef struct {
     RROutput		output B32;
@@ -281,6 +279,8 @@ typedef struct {
     Time	timestamp B32;
     RRCrtc	crtc B32;
     RROutputOptions currentOptions B32;
+    CARD32	mmWidth B32;
+    CARD32	mmHeight B32;
     CARD8	connection;
     CARD8	subpixelOrder;
     CARD16	nCrtcs B16;
@@ -290,7 +290,7 @@ typedef struct {
     CARD16	nameLength B16;
     RROutputOptions possibleOptions B32;
 } xRRGetOutputInfoReply;
-#define sz_xRRGetOutputInfoReply	36
+#define sz_xRRGetOutputInfoReply	44
 
 typedef struct {
     CARD8	reqType;
@@ -374,7 +374,7 @@ typedef struct {
     Window	window B32;
     xRRModeInfo	modeInfo;
 } xRRCreateModeReq; 
-#define sz_xRRCreateModeReq		48
+#define sz_xRRCreateModeReq		40
 
 typedef struct {
     BYTE	type;
diff --git a/randrproto.txt b/randrproto.txt
index 01b284c..20543bf 100644
--- a/randrproto.txt
+++ b/randrproto.txt
@@ -288,8 +288,7 @@ OUTPUTOPTION { RROutputOptionScaleNone,
 	
 MODEINFO { id: MODE
 	   name: STRING
-           widthInPixels, heightInPixels: CARD16
-           widthInMillimeters, heightInMillimeters: CARD32
+           width, height: CARD16
            dotClock: CARD32
            hSyncStart, hSyncEnd, hTotal, hSkew: CARD16
            vSyncStart, vSyncEnd, vTotal: CARD16
@@ -559,6 +558,7 @@ dynamic changes in the display environme
 	name: STRING
 	connection: CONNECTION
 	subpixel-order: SUBPIXELORDER
+        widthInMillimeters, heightInMillimeters: CARD32
 	possible-options: SETofOUTPUTOPTION
 	crtcs: LISTofCRTC
 	clones: LISTofOUTPUT
@@ -593,6 +593,10 @@ dynamic changes in the display environme
 	'subpixel-order' contains the resulting subpixel order of the
 	connected device to allow correct subpixel rendering.
 
+	'widthInMillimeters' and 'heightInMillimeters' report the physical
+	size of the displayed area. If unknown, or not really fixed (e.g.,
+	for a projector), these	values are both zero.
+
 	'possible-options' indicate which options are supported by this
 	output device.
 	
@@ -1392,10 +1396,12 @@ A.2.1 Protocol Requests added with versi
 	1	1			Reply
 	1	RRCONFIGSTATUS		status
 	2	CARD16			sequence number
-	4	1+c+m+(n+p)/4		reply length
+	4	3+c+m+(n+p)/4		reply length
 	4	TIMESTAMP		timestamp
 	4	CRTC			current connected crtc
 	4	SETofOUTPUTOPTION	current output options
+	4	CARD32			width in millimeters
+	4	CARD32			height in millimeters
 	1	CONNECTION		connection
 	1	SUBPIXELORDER		subpixel-order
 	2	c			number of CRTCs



More information about the xorg-commit mailing list