aboutsummaryrefslogtreecommitdiff
path: root/include/wlr
diff options
context:
space:
mode:
Diffstat (limited to 'include/wlr')
-rw-r--r--include/wlr/types/wlr_surface.h59
1 files changed, 30 insertions, 29 deletions
diff --git a/include/wlr/types/wlr_surface.h b/include/wlr/types/wlr_surface.h
index 2ea4e35a..526679d6 100644
--- a/include/wlr/types/wlr_surface.h
+++ b/include/wlr/types/wlr_surface.h
@@ -17,7 +17,6 @@ enum wlr_surface_state_field {
WLR_SURFACE_STATE_TRANSFORM = 32,
WLR_SURFACE_STATE_SCALE = 64,
WLR_SURFACE_STATE_FRAME_CALLBACK_LIST = 128,
- WLR_SURFACE_STATE_SUBSURFACE_POSITION = 256,
};
struct wlr_surface_state {
@@ -32,38 +31,10 @@ struct wlr_surface_state {
int32_t scale;
struct wl_list frame_callback_list; // wl_resource
- struct {
- int32_t x, y;
- } subsurface_position;
-
int width, height; // in surface-local coordinates
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;
- bool has_cache;
-
- bool synchronized;
- bool reordered;
-
- struct wl_list parent_link;
- struct wl_list parent_pending_link;
-
- struct wl_listener surface_destroy;
- struct wl_listener parent_destroy;
-
- struct {
- struct wl_signal destroy;
- } events;
-
- void *data;
-};
-
struct wlr_surface {
struct wl_resource *resource;
struct wlr_renderer *renderer;
@@ -97,6 +68,36 @@ struct wlr_surface {
void *data;
};
+struct wlr_subsurface_state {
+ int32_t x, y;
+};
+
+struct wlr_subsurface {
+ struct wl_resource *resource;
+ struct wlr_surface *surface;
+ struct wlr_surface *parent;
+
+ struct wlr_subsurface_state current, pending;
+
+ struct wlr_surface_state *cached;
+ bool has_cache;
+
+ bool synchronized;
+ bool reordered;
+
+ struct wl_list parent_link;
+ struct wl_list parent_pending_link;
+
+ struct wl_listener surface_destroy;
+ struct wl_listener parent_destroy;
+
+ struct {
+ struct wl_signal destroy;
+ } events;
+
+ void *data;
+};
+
typedef void (*wlr_surface_iterator_func_t)(struct wlr_surface *surface,
int sx, int sy, void *data);