aboutsummaryrefslogtreecommitdiffstats
path: root/include/sway/output.h
diff options
context:
space:
mode:
authorLibravatar Alexander Orzechowski <alex@ozal.ski>2024-01-18 10:04:51 -0500
committerLibravatar Kirill Primak <vyivel@eclair.cafe>2024-01-18 18:36:54 +0300
commit188811f80861caacd016b857b0d07f6d2d62d15a (patch)
treedc68ea00b707b25ce398c71fe1ad996f0eb820ea /include/sway/output.h
parentinput: Query scene graph for relevant surface/node intersections (diff)
downloadsway-188811f80861caacd016b857b0d07f6d2d62d15a.tar.gz
sway-188811f80861caacd016b857b0d07f6d2d62d15a.tar.zst
sway-188811f80861caacd016b857b0d07f6d2d62d15a.zip
scene_graph: Port layer_shell
Diffstat (limited to 'include/sway/output.h')
-rw-r--r--include/sway/output.h19
1 files changed, 4 insertions, 15 deletions
diff --git a/include/sway/output.h b/include/sway/output.h
index d353ce61..ea5d8f47 100644
--- a/include/sway/output.h
+++ b/include/sway/output.h
@@ -22,8 +22,12 @@ struct sway_output {
22 struct sway_node node; 22 struct sway_node node;
23 23
24 struct { 24 struct {
25 struct wlr_scene_tree *shell_background;
26 struct wlr_scene_tree *shell_bottom;
25 struct wlr_scene_tree *tiling; 27 struct wlr_scene_tree *tiling;
26 struct wlr_scene_tree *fullscreen; 28 struct wlr_scene_tree *fullscreen;
29 struct wlr_scene_tree *shell_top;
30 struct wlr_scene_tree *shell_overlay;
27 struct wlr_scene_tree *session_lock; 31 struct wlr_scene_tree *session_lock;
28 } layers; 32 } layers;
29 33
@@ -39,7 +43,6 @@ struct sway_output {
39 struct sway_server *server; 43 struct sway_server *server;
40 struct wl_list link; 44 struct wl_list link;
41 45
42 struct wl_list shell_layers[4]; // sway_layer_surface::link
43 struct wlr_box usable_area; 46 struct wlr_box usable_area;
44 47
45 struct wlr_damage_ring damage_ring; 48 struct wlr_damage_ring damage_ring;
@@ -124,8 +127,6 @@ void output_enable(struct sway_output *output);
124 127
125void output_disable(struct sway_output *output); 128void output_disable(struct sway_output *output);
126 129
127bool output_has_opaque_overlay_layer_surface(struct sway_output *output);
128
129struct sway_workspace *output_get_active_workspace(struct sway_output *output); 130struct sway_workspace *output_get_active_workspace(struct sway_output *output);
130 131
131void output_surface_for_each_surface(struct sway_output *output, 132void output_surface_for_each_surface(struct sway_output *output,
@@ -140,18 +141,6 @@ void output_view_for_each_popup_surface(struct sway_output *output,
140 struct sway_view *view, sway_surface_iterator_func_t iterator, 141 struct sway_view *view, sway_surface_iterator_func_t iterator,
141 void *user_data); 142 void *user_data);
142 143
143void output_layer_for_each_surface(struct sway_output *output,
144 struct wl_list *layer_surfaces, sway_surface_iterator_func_t iterator,
145 void *user_data);
146
147void output_layer_for_each_toplevel_surface(struct sway_output *output,
148 struct wl_list *layer_surfaces, sway_surface_iterator_func_t iterator,
149 void *user_data);
150
151void output_layer_for_each_popup_surface(struct sway_output *output,
152 struct wl_list *layer_surfaces, sway_surface_iterator_func_t iterator,
153 void *user_data);
154
155#if HAVE_XWAYLAND 144#if HAVE_XWAYLAND
156void output_unmanaged_for_each_surface(struct sway_output *output, 145void output_unmanaged_for_each_surface(struct sway_output *output,
157 struct wl_list *unmanaged, sway_surface_iterator_func_t iterator, 146 struct wl_list *unmanaged, sway_surface_iterator_func_t iterator,