aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/wlr/types/wlr_surface.h25
1 files changed, 19 insertions, 6 deletions
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;