XDamageSubtractAndTrigger behaves exactly like
XDamageSubtract except it receives an optional
fence sync object.  If the value of this object
is not None, it is triggered by X once all the
rendering associated with the damage regions
being subtracted has completed.

Signed-off-by: James Jones <[email protected]>
Reviewed-by: Aaron Plattner <[email protected]>
---
 damageproto.h |   13 +++++++++++++
 damagewire.h  |    5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/damageproto.h b/damageproto.h
index 107e192..ab0110c 100644
--- a/damageproto.h
+++ b/damageproto.h
@@ -25,6 +25,7 @@
 #define _DAMAGEPROTO_H_
 
 #include <X11/Xmd.h>
+#include <X11/extensions/syncproto.h>
 #include <X11/extensions/xfixesproto.h>
 #include <X11/extensions/damagewire.h>
 
@@ -124,6 +125,18 @@ typedef struct {
 
 #define sz_xDamageAddReq               12
 
+typedef struct {
+    CARD8      reqType;
+    CARD8      damageReqType;
+    CARD16     length B16;
+    Damage     damage B32;
+    Region     repair B32;
+    Region     parts B32;
+    XSyncFence finishedFence B32;
+} xDamageSubtractAndTriggerReq;
+
+#define sz_xDamageSubtractAndTriggerReq        20
+
 /* Events */
 
 #define DamageNotifyMore    0x80
diff --git a/damagewire.h b/damagewire.h
index d90a0dd..590a7bb 100644
--- a/damagewire.h
+++ b/damagewire.h
@@ -25,7 +25,7 @@
 
 #define        DAMAGE_NAME     "DAMAGE"
 #define DAMAGE_MAJOR   1
-#define DAMAGE_MINOR   1
+#define DAMAGE_MINOR   2
 
 /************* Version 1 ****************/
 
@@ -41,8 +41,9 @@
 #define X_DamageDestroy                        2
 #define X_DamageSubtract               3
 #define X_DamageAdd                    4
+#define X_DamageSubtractAndTrigger     5
 
-#define XDamageNumberRequests          (X_DamageAdd + 1)
+#define XDamageNumberRequests          (X_DamageSubtractAndTrigger + 1)
 
 /* Events */
 #define XDamageNotify                  0
-- 
1.7.1

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to