Bumps the protocol version.

Signed-off-by: Francisco Jerez <curroje...@riseup.net>
---
 dri2proto.h   |   19 +++++++++++++++++--
 dri2proto.txt |   31 ++++++++++++++++++++++++-------
 2 files changed, 41 insertions(+), 9 deletions(-)

diff --git a/dri2proto.h b/dri2proto.h
index 43152c2..9708a4a 100644
--- a/dri2proto.h
+++ b/dri2proto.h
@@ -35,10 +35,10 @@
 
 #define DRI2_NAME                      "DRI2"
 #define DRI2_MAJOR                     1
-#define DRI2_MINOR                     2
+#define DRI2_MINOR                     3
 
 #define DRI2NumberErrors               0
-#define DRI2NumberEvents               1
+#define DRI2NumberEvents               2
 #define DRI2NumberRequests             13
 
 #define X_DRI2QueryVersion             0
@@ -59,6 +59,7 @@
  * Events
  */
 #define DRI2_BufferSwapComplete        0
+#define DRI2_InvalidateBuffers 1
 
 typedef struct {
     CARD32  attachment B32;
@@ -299,4 +300,18 @@ typedef struct {
 } xDRI2BufferSwapComplete;
 #define sz_xDRI2BufferSwapComplete 32
 
+typedef struct {
+    CARD8 type;
+    CARD8 pad;
+    CARD16 sequenceNumber B16;
+    CARD32 drawable B32;
+    CARD32 pad1 B32;
+    CARD32 pad2 B32;
+    CARD32 pad3 B32;
+    CARD32 pad4 B32;
+    CARD32 pad5 B32;
+    CARD32 pad6 B32;
+} xDRI2InvalidateBuffers;
+#define sz_xDRI2InvalidateBuffers 32
+
 #endif
diff --git a/dri2proto.txt b/dri2proto.txt
index de58289..3d3eec4 100644
--- a/dri2proto.txt
+++ b/dri2proto.txt
@@ -125,9 +125,12 @@ or by using the OML swap buffers routine.
 
 2.7 Events
 
-DRI2 provides a single event to indicate when a DRI2SwapBuffers request has
-been completed.  This can be used to throttle drawing on the client side and
-tie into application main loops.
+DRI2 provides an event to indicate when a DRI2SwapBuffers request has
+been completed.  This can be used to throttle drawing on the client
+side and tie into application main loops.
+
+Another event is generated when the validity of the requested buffers
+changes.
 
                             ⚙ ⚙ ⚙  ⚙ ⚙ ⚙
 
@@ -333,10 +336,6 @@ The name of this extension is "DRI2".
        Returns the swap count value when the swap will actually occur (e.g.
        the last queued swap count + (pending swap count * swap interval)).
 
-       The client should invalidate its render buffers after sending this
-       request, causing a subsequent GetBuffers request to get updated buffer
-       info.
-
        This request is only available with protocol version 1.2 or
        later.
 
@@ -459,6 +458,22 @@ The name of this extension is "DRI2".
        the swap was performed with a blit, and DRI2_FLIP_COMPLETE, indicating
        a full page flip was completed.
 
+┌───
+    DRI2InvalidateBuffers
+      ▶
+       drawable: CARD32
+└───
+
+       This event is generated when the buffers the client had
+       requested for 'drawable' (with DRI2GetBuffers or
+       DRI2GetBuffersWithFormat) become inappropriate because they
+       don't match the drawable dimensions anymore, or a buffer swap
+       has been performed.
+
+       Note that the server is only required to warn the client once
+       about this condition, until the client takes care of bringing
+       them back up-to-date with another GetBuffers request.
+
                             ⚙ ⚙ ⚙  ⚙ ⚙ ⚙
 
 10. Extension Versioning
@@ -491,6 +506,8 @@ The DRI2 extension has undergone a number of revisions 
before
        2.2: Approaching perfection.  Added requests for swapbuffers,
              MSC and SBC related requests, and events.
 
+       2.3: Added the DRI2InvalidateBuffers event.
+
 Compatibility up to 2.0 is not preserved, but was also never released.
 
 
-- 
1.6.4.4


------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to