[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

x11proto-composite: Changes to 'upstream-unstable'



 .gitignore         |    1 
 composite.h        |   10 ++------
 compositeproto.h   |   48 -------------------------------------------
 compositeproto.txt |   59 ++++++++++++++++-------------------------------------
 configure.ac       |    2 -
 5 files changed, 23 insertions(+), 97 deletions(-)

New commits:
commit 25e8047e25652be388dc66d85c180dcc4ccea4f6
Author: Keith Packard <keithp@neko.keithp.com>
Date:   Tue Jul 3 14:11:10 2007 -0700

    Bump version in configure.ac to 0.4

diff --git a/configure.ac b/configure.ac
index 581ad12..3a5fc5e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -24,7 +24,7 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ([2.57])
-AC_INIT([CompositeProto], [0.3], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
+AC_INIT([CompositeProto], [0.4], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE
 

commit 1838412121d0bac8ce443d362e75439d58a93a4d
Author: Keith Packard <keithp@neko.keithp.com>
Date:   Tue Jul 3 14:09:41 2007 -0700

    Define new manual-redirect clipping semantics and bump version to 0.4.
    
    Manual-redirect windows no longer clip their parents, nor do they affect
    expose event computation. This makes it possible to create application-level
    composited windows which can be damaged by other window manipulations.
    
    This patch also removes the coordinate transformation stuff which was never
    released.

diff --git a/composite.h b/composite.h
index 009007b..30b190f 100644
--- a/composite.h
+++ b/composite.h
@@ -49,7 +49,7 @@
 
 #define COMPOSITE_NAME				"Composite"
 #define COMPOSITE_MAJOR				0
-#define COMPOSITE_MINOR				3
+#define COMPOSITE_MINOR				4
 
 #define CompositeRedirectAutomatic		0
 #define CompositeRedirectManual			1
@@ -63,13 +63,9 @@
 #define X_CompositeNameWindowPixmap		6
 #define X_CompositeGetOverlayWindow             7
 #define X_CompositeReleaseOverlayWindow         8
-#define X_CompositeRedirectCoordinate		9
-#define X_CompositeTransformCoordinate		10
 
-#define CompositeNumberRequests	    (X_CompositeTransformCoordinate + 1)
+#define CompositeNumberRequests	    (X_CompositeReleaseOverlayWindow + 1)
 
-#define CompositeTransformCoordinateNotify    	0
-
-#define CompositeNumberEvents			1
+#define CompositeNumberEvents			0
 
 #endif /* _COMPOSITE_H_ */
diff --git a/compositeproto.h b/compositeproto.h
index b7c605b..c57628c 100644
--- a/compositeproto.h
+++ b/compositeproto.h
@@ -185,54 +185,6 @@ typedef struct {
 
 #define sz_xCompositeReleaseOverlayWindowReq sizeof(xCompositeReleaseOverlayWindowReq)
 
-/* Version 0.4 additions */
-
-typedef struct {
-    CARD8   reqType;
-    CARD8   compositeReqType;
-    CARD16  length;
-    Window  window B32;
-    BOOL    redirect;
-    BYTE    unused1;
-    CARD16  unused2 B16;
-} xCompositeRedirectCoordinateReq;
-
-#define sz_xCompositeRedirectCoordinateReq	    12
-
-typedef struct {
-    CARD8   type;
-    CARD8   subtype;	/* XXX use this? */
-    CARD16  sequenceNumber B16;
-    Time    time B32;
-    Window  window B32;
-    Window  child B32;
-    CARD32  serialNumber B32;
-    CARD32  count B32;
-    CARD16  x B16;
-    CARD16  y B16;
-    CARD32  pad1 B32;
-} xCompositeTransformCoordinateNotifyEvent;
-
-typedef struct {
-    Window  window B32;
-    CARD16  x B16;
-    CARD16  y B16;
-} xCompositeCoordinate;
-
-#define sz_xCompositeCoordinate	8
-
-typedef struct {
-    CARD8   reqType;
-    CARD8   compositeReqType;
-    CARD16  length;
-    Window  window B32;
-    CARD32  serialNumber B32;
-    CARD16  x B16;
-    CARD16  y B16;
-} xCompositeTransformCoordinateReq;
-
-#define sz_xCompositeTransformCoordinateReq	16
-
 #undef Window
 #undef Region
 
diff --git a/compositeproto.txt b/compositeproto.txt
index 8740920..4b86621 100644
--- a/compositeproto.txt
+++ b/compositeproto.txt
@@ -1,6 +1,6 @@
 		         Composite Extension
 			     Version 0.4
-			      2007-4-17
+			      2007-7-3
 			    Keith Packard
 			  keithp@keithp.com
 			    Deron Johnson
@@ -34,6 +34,9 @@ both early prototypes and the final design include:
  +	Deron Johnson for the Looking Glass implementation and
  	a prototype of the coordinate transformation mechanism.
 
+ +	Ryan Lortie for helping figure out reasonable parent clipping
+ 	semantics in the presense of manual redirected children.
+
 3. Architecture
 
 The composite extension provides three related mechanisms:
@@ -129,11 +132,16 @@ redefine its input region, but the specific arbitration rules followed
 by these clients is not defined by this specification; these policies
 should be defined by the clients themselves.
 
-3.3 Coordinate transform redirection
+3.3 Clipping semantics redefined
 
-Version 0.4 of the protocol adds the coordinate transformation redirection
-portions of the protocol which externalize the relationship between
-parent and child positions with respect to pointer coordinates.
+Version 0.4 of the protocol changes the semantics of clipping in the
+presense of manual redirect children. In version 0.3, a parent was always
+clipped to child windows, independent of the kind of redirection going on.
+With version 0.4, the parent is no longer clipped to child windows which are
+manually redirected. This means the parent can draw in the child region without using
+IncludeInferiors mode, and (perhaps more importantly), it will receive
+expose events in those regions caused by other actions. This new behaviour
+is not selectable.
 
 4. Errors
 
@@ -147,34 +155,6 @@ The composite extension does not define any new errors.
 		child:			Window
 		x, y:			CARD16
 
-6. Events
-
-Version 0.4 of the Composite protocol defines one new event
-
-    TransformCoordinateNotify
-    
-		subtype:		COORDINATEEVENT
-		window:			Window
-		child:			Window
-		time:			Timestamp
-		serialNumber:		CARD32
-		count:			CARD32
-		x, y:			INT16
-	
-	This event is delivered to the client requesting for coordinate
-	redirection for 'window'. 'x' and 'y' are a location in 'child' if
-	not None, else in 'window'. 'time' is the time of any related
-	pointer event. 'serialNumber' serves to sequence transformations.
-	'count' indicates the number of events still to be delivered for
-	'window' to satisfy a particular operation within the server
-
-	The client must respond to this event with a suitable
-	TransformCoordinate request that includes matching 'window', 'child'
-	and serialNumber fields.
-
-	'serialNumber' may be repeated in multiple events, indicating that
-	the server needs to redo the same transformation for some reason.
-
 7. Extension Initialization
 
 The client must negotiate the version of the extension before executing

commit bca9592612d60142e3c624b90649475b561b8eda
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Tue Apr 17 20:48:18 2007 -0700

    Add *~ to .gitignore to skip emacs/patch droppings

diff --git a/.gitignore b/.gitignore
index 521ba35..4945c82 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@ config.status
 configure
 install-sh
 missing
+*~

commit 6acacb52efd6f0927c9b82fe864f17623e7dc8c2
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Tue Apr 17 20:47:50 2007 -0700

    Protocol spec nit cleanups
    
    Fix versioning from 0.3/0.4 merge
    Update description of RedirectWindow to match names in protocol diagrams

diff --git a/compositeproto.txt b/compositeproto.txt
index 77b1b85..8740920 100644
--- a/compositeproto.txt
+++ b/compositeproto.txt
@@ -1,11 +1,8 @@
-		        Composite Extension
-			    Version 0.4
-			      2006-2-24
+		         Composite Extension
+			     Version 0.4
+			      2007-4-17
 			    Keith Packard
 			  keithp@keithp.com
-
-			    Version 0.3
-			      2006-5-13
 			    Deron Johnson
      		        deron.johnson@sun.com
 
@@ -152,7 +149,7 @@ The composite extension does not define any new errors.
 
 6. Events
 
-Version 0.3 of the Composite protocol defines one new event
+Version 0.4 of the Composite protocol defines one new event
 
     TransformCoordinateNotify
     
@@ -213,9 +210,9 @@ operations other than QueryVersion.
 		errors: Window, Access, Match
 
 	The hierarchy starting at 'window' is directed to off-screen
-	storage. 'automatic-update' specifies whether the contents
-	are mirrored to the parent window automatically or not. Only
-	one client may specify this flag, another attempt will result in an
+	storage. 'update' specifies whether the contents are mirrored to 
+	the parent window automatically or not. Only one client may specify 
+	an update type of Manual, another attempt will result in an
 	Access error. When all clients enabling redirection terminate,
 	the redirection will automatically be disabled.
 



Reply to: