aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/rootston/desktop.h2
-rw-r--r--include/rootston/layers.h3
-rw-r--r--include/rootston/output.h3
-rw-r--r--include/wlr/types/wlr_layer_shell.h3
4 files changed, 7 insertions, 4 deletions
diff --git a/include/rootston/desktop.h b/include/rootston/desktop.h
index ad7654a1..92cc6d9d 100644
--- a/include/rootston/desktop.h
+++ b/include/rootston/desktop.h
@@ -29,8 +29,6 @@
struct roots_desktop {
struct wl_list views; // roots_view::link
- struct wl_list layers[4]; // layer_surface::link
-
struct wl_list outputs; // roots_output::link
struct timespec last_frame;
diff --git a/include/rootston/layers.h b/include/rootston/layers.h
index 269056ea..f432d53d 100644
--- a/include/rootston/layers.h
+++ b/include/rootston/layers.h
@@ -14,6 +14,9 @@ struct roots_layer_surface {
struct wl_listener map;
struct wl_listener unmap;
struct wl_listener surface_commit;
+
+ bool configured;
+ struct wlr_box geo;
};
#endif
diff --git a/include/rootston/output.h b/include/rootston/output.h
index a852a204..5545d76a 100644
--- a/include/rootston/output.h
+++ b/include/rootston/output.h
@@ -14,6 +14,7 @@ struct roots_output {
struct wl_list link; // roots_desktop:outputs
struct roots_view *fullscreen_view;
+ struct wl_list layers[4]; // layer_surface::link
struct timespec last_frame;
struct wlr_output_damage *damage;
@@ -35,5 +36,7 @@ void output_damage_from_view(struct roots_output *output,
struct roots_view *view);
void output_damage_whole_drag_icon(struct roots_output *output,
struct roots_drag_icon *icon);
+void output_damage_whole_surface(struct wlr_surface *surface,
+ double lx, double ly, float rotation, void *data);
#endif
diff --git a/include/wlr/types/wlr_layer_shell.h b/include/wlr/types/wlr_layer_shell.h
index 0807fe8d..3002345d 100644
--- a/include/wlr/types/wlr_layer_shell.h
+++ b/include/wlr/types/wlr_layer_shell.h
@@ -42,14 +42,12 @@ struct wlr_layer_client {
};
struct wlr_layer_surface_state {
- // Client
uint32_t anchor;
uint32_t exclusive_zone;
struct {
uint32_t top, right, bottom, left;
} margin;
bool keyboard_interactive;
- // Server
uint32_t width, height;
};
@@ -61,6 +59,7 @@ struct wlr_layer_surface_configure {
struct wlr_layer_surface {
struct wlr_surface *surface;
+ struct wlr_output *output;
struct wlr_layer_client *client;
struct wl_resource *resource;
struct wl_list link; // wlr_layer_client:surfaces