Commit 029608dd authored by Roman Gilg's avatar Roman Gilg Committed by Adam Jackson
Browse files

present: Add window flip mode



In contrast to screen flip mode this mode:
* supports flips per windows (these windows currently need to have the same
  size as their parent windows with the same pixmap),
* sends pixmap idle signals to the client only after the driver has given
  an additional event notify.

This patch only introduces the new mode as a stub. It additionally needs a
driver hook, such that it can get initialized and appropriate cleanup
functions.
Signed-off-by: Roman Gilg's avatarRoman Gilg <subdiff@gmail.com>
Reviewed-by: Adam Jackson's avatarAdam Jackson <ajax@redhat.com>
parent 8d370fcd
......@@ -15,6 +15,7 @@ libpresent_la_SOURCES = \
present_request.c \
present_scmd.c \
present_screen.c \
present_vblank.c
present_vblank.c \
present_wnmd.c
sdk_HEADERS = present.h presentext.h
......@@ -9,6 +9,7 @@ srcs_present = [
'present_scmd.c',
'present_screen.c',
'present_vblank.c',
'present_wnmd.c',
]
libxserver_present = static_library('libxserver_present',
......
......@@ -159,6 +159,12 @@ typedef struct present_wnmd_info {
*/
extern _X_EXPORT void
present_event_notify(uint64_t event_id, uint64_t ust, uint64_t msc);
/*
* Called when 'event_id' occurs for 'window'.
* 'ust' and 'msc' indicate when the event actually happened
*/
extern _X_EXPORT void
present_wnmd_event_notify(WindowPtr window, uint64_t event_id, uint64_t ust, uint64_t msc);
/* 'crtc' has been turned off, so any pending events will never occur.
*/
......
......@@ -477,4 +477,13 @@ present_vblank_scrap(present_vblank_ptr vblank);
void
present_vblank_destroy(present_vblank_ptr vblank);
/*
* present_wnmd.c
*/
void
present_wnmd_set_abort_flip(WindowPtr window);
void
present_wnmd_init_mode_hooks(present_screen_priv_ptr screen_priv);
#endif /* _PRESENT_PRIV_H_ */
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment