From cb2d05e83b22ecd5d5bec8f1787aa7b15be6e276 Mon Sep 17 00:00:00 2001 From: Tony Crisci Date: Sun, 24 Sep 2017 11:17:17 -0400 Subject: subsurface sync and position --- include/wlr/types/wlr_surface.h | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) (limited to 'include/wlr') diff --git a/include/wlr/types/wlr_surface.h b/include/wlr/types/wlr_surface.h index 04c64a72..07f19b67 100644 --- a/include/wlr/types/wlr_surface.h +++ b/include/wlr/types/wlr_surface.h @@ -19,12 +19,6 @@ struct wlr_frame_callback { #define WLR_SURFACE_INVALID_TRANSFORM 32 #define WLR_SURFACE_INVALID_SCALE 64 -struct wlr_subsurface { - struct wl_resource *resource; - struct wlr_surface *surface; - struct wlr_surface *parent; -}; - struct wlr_surface_state { uint32_t invalid; struct wl_resource *buffer; @@ -37,6 +31,25 @@ struct wlr_surface_state { int buffer_width, buffer_height; }; +struct wlr_subsurface { + struct wl_resource *resource; + struct wlr_surface *surface; + struct wlr_surface *parent; + + struct wlr_surface_state cached; + + struct { + int32_t x, y; + } position; + + struct { + int32_t x, y; + bool set; + } pending_position; + + bool synchronized; +}; + struct wlr_surface { struct wl_resource *resource; struct wlr_renderer *renderer; -- cgit v1.2.3