aboutsummaryrefslogtreecommitdiff
path: root/include/wlr
diff options
context:
space:
mode:
authorTony Crisci <tony@dubstepdish.com>2017-09-24 11:17:17 -0400
committerTony Crisci <tony@dubstepdish.com>2017-09-30 08:55:40 -0400
commitcb2d05e83b22ecd5d5bec8f1787aa7b15be6e276 (patch)
treea600c038267880fbf294aff68ac3379327617dd6 /include/wlr
parent7f39578824b9732bec7925b3745deb59fab3681f (diff)
subsurface sync and position
Diffstat (limited to 'include/wlr')
-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;