From bf6d24540000339029a30715f1f72b5b95a45018 Mon Sep 17 00:00:00 2001 From: emersion Date: Fri, 9 Feb 2018 22:54:14 +0100 Subject: Swap buffers with damage --- include/wlr/interfaces/wlr_output.h | 2 +- include/wlr/render/egl.h | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'include/wlr') diff --git a/include/wlr/interfaces/wlr_output.h b/include/wlr/interfaces/wlr_output.h index 652be45e..a01f8901 100644 --- a/include/wlr/interfaces/wlr_output.h +++ b/include/wlr/interfaces/wlr_output.h @@ -19,7 +19,7 @@ struct wlr_output_impl { bool (*move_cursor)(struct wlr_output *output, int x, int y); void (*destroy)(struct wlr_output *output); bool (*make_current)(struct wlr_output *output, int *buffer_age); - bool (*swap_buffers)(struct wlr_output *output); + bool (*swap_buffers)(struct wlr_output *output, pixman_region32_t *damage); void (*set_gamma)(struct wlr_output *output, uint32_t size, uint16_t *r, uint16_t *g, uint16_t *b); uint32_t (*get_gamma_size)(struct wlr_output *output); diff --git a/include/wlr/render/egl.h b/include/wlr/render/egl.h index 6979fd9b..1facc6b8 100644 --- a/include/wlr/render/egl.h +++ b/include/wlr/render/egl.h @@ -1,9 +1,10 @@ #ifndef WLR_EGL_H #define WLR_EGL_H +#include #include #include -#include +#include #include struct wlr_egl { @@ -16,6 +17,7 @@ struct wlr_egl { struct { bool buffer_age; + bool swap_buffers_with_damage; } egl_exts; struct wl_display *wl_display; @@ -72,4 +74,7 @@ const char *egl_error(void); bool wlr_egl_make_current(struct wlr_egl *egl, EGLSurface surface, int *buffer_age); +bool wlr_egl_swap_buffers(struct wlr_egl *egl, EGLSurface surface, + pixman_region32_t *damage); + #endif -- cgit v1.2.3