From 5de191e6b1847017ecc7e13bc195f47479d332ac Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Tue, 10 Dec 2013 13:32:11 -0800 Subject: Update to protocol version 1.0 Add Idle and Redirect events, change PresentRegion to PresentPixmap, add capabilities Signed-off-by: Keith Packard --- include/X11/extensions/Xpresent.h | 74 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 71 insertions(+), 3 deletions(-) (limited to 'include/X11') diff --git a/include/X11/extensions/Xpresent.h b/include/X11/extensions/Xpresent.h index b253870..f49b1a4 100644 --- a/include/X11/extensions/Xpresent.h +++ b/include/X11/extensions/Xpresent.h @@ -29,6 +29,8 @@ #include #include #include +#include +#include /* * This revision number also appears in configure.ac, they have @@ -41,6 +43,11 @@ * Generic Present event. All Present events have the same header. */ +typedef struct { + Window window; + uint32_t serial; +} XPresentNotify; + typedef struct { int type; /* event base */ unsigned long serial; @@ -82,6 +89,58 @@ typedef struct { uint64_t msc; } XPresentCompleteNotifyEvent; +typedef struct { + int type; /* event base */ + unsigned long serial; + Bool send_event; + Display *display; + int extension; + int evtype; + + uint32_t eid; + Window window; + uint32_t serial_number; + Pixmap pixmap; + XSyncFence idle_fence; +} XPresentIdleNotifyEvent; + +typedef struct { + int type; /* event base */ + unsigned long serial; + Bool send_event; + Display *display; + int extension; + int evtype; + + uint32_t eid; + Window event_window; + + Window window; + Pixmap pixmap; + uint32_t serial_number; + + XserverRegion valid_region; + XserverRegion update_region; + + XRectangle valid_rect; + XRectangle update_rect; + + int x_off, y_off; + + RRCrtc target_crtc; + + XSyncFence wait_fence; + XSyncFence idle_fence; + + uint32_t options; + + uint64_t target_msc; + uint64_t divisor; + uint64_t remainder; + XPresentNotify *notifies; + int nnotifies; +} XPresentRedirectNotifyEvent; + _XFUNCPROTOBEGIN Bool XPresentQueryExtension (Display *dpy, @@ -96,7 +155,7 @@ Status XPresentQueryVersion (Display *dpy, int XPresentVersion (void); void -XPresentRegion(Display *dpy, +XPresentPixmap(Display *dpy, Window window, Pixmap pixmap, uint32_t serial, @@ -104,10 +163,15 @@ XPresentRegion(Display *dpy, XserverRegion update, int x_off, int y_off, - XID idle_fence, + RRCrtc target_crtc, + XSyncFence wait_fence, + XSyncFence idle_fence, + uint32_t options, uint64_t target_msc, uint64_t divisor, - uint64_t remainder); + uint64_t remainder, + XPresentNotify *notifies, + int nnotifies); void XPresentNotifyMSC(Display *dpy, @@ -122,6 +186,10 @@ XPresentSelectInput(Display *dpy, Window window, unsigned event_mask); +uint32_t +XPresentQueryCapabilities(Display *dpy, + XID target); + _XFUNCPROTOEND #endif /* _XPRESENT_H_ */ -- cgit v1.2.3