Bumps the protocol and package versions.

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

diff --git a/configure.ac b/configure.ac
index fc96197..c5affe3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
 AC_PREREQ([2.57])
-AC_INIT([DRI2Proto], [2.2], 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
+AC_INIT([DRI2Proto], [2.3], 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE
 
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


------------------------------------------------------------------------------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to