diff options
author | Keith Packard <keithp@keithp.com> | 2013-07-24 21:07:20 -0700 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2013-07-24 21:07:20 -0700 |
commit | f15c4568f2b4e50e80bf5cf650bde13441bb0b72 (patch) | |
tree | 97b7bab473db351b3b06aab1771982f80efbd138 | |
parent | ec9db7408ff742312677e40b0b9a0239a07ab43c (diff) |
Start reworking for present redirection.
In PresentRegion, add the PresentNotify list, add explicit CRTC.
In PresentRedirectNotify, add CRTC and update_window values
Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r-- | presentproto.h | 32 | ||||
-rw-r--r-- | presentproto.txt | 14 |
2 files changed, 36 insertions, 10 deletions
diff --git a/presentproto.h b/presentproto.h index 3e2c0bb..1df7d58 100644 --- a/presentproto.h +++ b/presentproto.h @@ -29,6 +29,12 @@ #define XSyncFence CARD32 typedef struct { + Window window B32; + CARD32 serial B32; +} xPresentNotify; +#define sz_xPresentNotify 8 + +typedef struct { CARD8 reqType; CARD8 presentReqType; CARD16 length B16; @@ -67,11 +73,15 @@ typedef struct { INT16 y_off B16; XSyncFence idle_fence B32; + CARD32 target_crtc B32; + CARD32 pad1 B32; + CARD64 target_msc; CARD64 divisor; CARD64 remainder; + /* followed by a LISTofPRESENTNOTIFY */ } xPresentRegionReq; -#define sz_xPresentRegionReq 56 +#define sz_xPresentRegionReq 64 typedef struct { CARD8 reqType; @@ -148,29 +158,37 @@ typedef struct { CARD16 sequenceNumber B16; CARD32 length; CARD16 evtype B16; - CARD16 pad2; + CARD8 update_window; + CARD8 pad1; CARD32 eid B32; - Window event_window B32; Window window B32; Pixmap pixmap B32; + CARD32 serial B32; + + /* 32-byte boundary */ + Region valid_region B32; + Region update_region B32; xRectangle valid_rect; + xRectangle update_rect; - Region update_region B32; INT16 x_off B16; INT16 y_off B16; - CARD64 target_msc; + CARD32 target_crtc B32; + CARD64 target_msc; CARD64 divisor; CARD64 remainder; - XSyncFence idle_fence; + XSyncFence idle_fence B32; + CARD32 pad2 B32; + } xPresentRedirectNotify; -#define sz_xPresentRedirectNotify 84 +#define sz_xPresentRedirectNotify 96 #undef Region #undef XSyncFence diff --git a/presentproto.txt b/presentproto.txt index 6b226ab..c72ccfd 100644 --- a/presentproto.txt +++ b/presentproto.txt @@ -226,6 +226,8 @@ The name of this extension is "Present" PresentConfigureNotify type: CARD8 XGE event type (35) extension: CARD8 Present extension request number + sequence-number: CARD16 + length: CARD32 2 length: CARD16 2 evtype: CARD16 Present_ConfigureNotify eventID: PRESENTEVENTID @@ -252,7 +254,8 @@ The name of this extension is "Present" PresentCompleteNotify type: CARD8 XGE event type (35) extension: CARD8 Present extension request number - length: CARD16 2 + sequence-number: CARD16 + length: CARD32 2 evtype: PRESENTEVENTTYPE PresentCompleteNotify eventID: PRESENTEVENTID window: WINDOW @@ -280,18 +283,23 @@ The name of this extension is "Present" PresentRedirectNotify type: CARD8 XGE event type (35) extension: CARD8 Present extension request number - length: CARD16 2 + sequence-number: CARD16 + length: CARD32 16 evtype: CARD16 Present_RedirectNotify + update-window: CARD8 + eventID: PRESENTEVENTID event-window: WINDOW window: WINDOW pixmap: PIXMAP serial: CARD32 + valid-area: REGION - valid-rect: RECTANGLE update-area: REGION + valid-rect: RECTANGLE update-rect: RECTANGLE x-off, y-off: INT16 + target-crtc: CRTC target_msc: CARD64 divisor: CARD64 remainder: CARD64 |