summaryrefslogtreecommitdiff
path: root/include/X11/extensions
diff options
context:
space:
mode:
authorLouis-Francis Ratté-Boulianne <lfrb@collabora.com>2018-02-28 01:19:34 +0000
committerAdam Jackson <ajax@redhat.com>2018-02-28 11:13:11 -0500
commit751cf1e19e616e400814324e3009f68f3e2d32a4 (patch)
tree25b5f003417eb730d4dcf52c4e1588e93b7e251e /include/X11/extensions
parent0fca474cd6a80fee72e6cdd5946a72ced087f80b (diff)
presentproto: PresentCompleteModeSuboptimalCopy flag
If the Complete event has this mode, the client is not using the more optimal format/modifier for the buffer allocation. The client must explicitely inform the server that it understands this mode by adding the PresentOptionSuboptimal flag when calling PresentPixmap. Its main usage as of now is to allow clients to re-fetch DRI3 format modifiers as some modifiers might allow direct scanout. Bump presentproto version to 1.2. Signed-off-by: Louis-Francis Ratté-Boulianne <lfrb@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com>
Diffstat (limited to 'include/X11/extensions')
-rw-r--r--include/X11/extensions/presenttokens.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/include/X11/extensions/presenttokens.h b/include/X11/extensions/presenttokens.h
index acb7576..9211207 100644
--- a/include/X11/extensions/presenttokens.h
+++ b/include/X11/extensions/presenttokens.h
@@ -25,7 +25,7 @@
#define PRESENT_NAME "Present"
#define PRESENT_MAJOR 1
-#define PRESENT_MINOR 0
+#define PRESENT_MINOR 2
#define PresentNumberErrors 0
#define PresentNumberEvents 0
@@ -44,10 +44,12 @@
#define PresentOptionAsync (1 << 0)
#define PresentOptionCopy (1 << 1)
#define PresentOptionUST (1 << 2)
+#define PresentOptionSuboptimal (1 << 3)
#define PresentAllOptions (PresentOptionAsync | \
PresentOptionCopy | \
- PresentOptionUST)
+ PresentOptionUST | \
+ PresentOptionSuboptimal)
/* Present capabilities */
@@ -94,8 +96,9 @@
/* Complete Modes */
-#define PresentCompleteModeCopy 0
-#define PresentCompleteModeFlip 1
-#define PresentCompleteModeSkip 2
+#define PresentCompleteModeCopy 0
+#define PresentCompleteModeFlip 1
+#define PresentCompleteModeSkip 2
+#define PresentCompleteModeSuboptimalCopy 3
#endif