diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/sway/output.h | 6 | ||||
-rw-r--r-- | include/sway/tree/container.h | 30 | ||||
-rw-r--r-- | include/sway/tree/root.h | 1 | ||||
-rw-r--r-- | include/sway/tree/view.h | 4 | ||||
-rw-r--r-- | include/sway/tree/workspace.h | 9 |
5 files changed, 21 insertions, 29 deletions
diff --git a/include/sway/output.h b/include/sway/output.h index d0d034b3..098540fb 100644 --- a/include/sway/output.h +++ b/include/sway/output.h | |||
@@ -39,6 +39,12 @@ struct sway_output { | |||
39 | } events; | 39 | } events; |
40 | }; | 40 | }; |
41 | 41 | ||
42 | struct sway_container *output_create(struct sway_output *sway_output); | ||
43 | |||
44 | void output_destroy(struct sway_container *output); | ||
45 | |||
46 | void output_begin_destroy(struct sway_container *output); | ||
47 | |||
42 | typedef void (*sway_surface_iterator_func_t)(struct sway_output *output, | 48 | typedef void (*sway_surface_iterator_func_t)(struct sway_output *output, |
43 | struct wlr_surface *surface, struct wlr_box *box, float rotation, | 49 | struct wlr_surface *surface, struct wlr_box *box, float rotation, |
44 | void *user_data); | 50 | void *user_data); |
diff --git a/include/sway/tree/container.h b/include/sway/tree/container.h index cd886cd0..2cb23d3c 100644 --- a/include/sway/tree/container.h +++ b/include/sway/tree/container.h | |||
@@ -176,27 +176,6 @@ struct sway_container *container_create(enum sway_container_type type); | |||
176 | 176 | ||
177 | const char *container_type_to_str(enum sway_container_type type); | 177 | const char *container_type_to_str(enum sway_container_type type); |
178 | 178 | ||
179 | struct sway_container *output_create(struct sway_output *sway_output); | ||
180 | |||
181 | /** | ||
182 | * Create a new container container. A container container can be a a child of | ||
183 | * a workspace container or another container container. | ||
184 | */ | ||
185 | struct sway_container *container_container_create(); | ||
186 | |||
187 | /** | ||
188 | * Create a new output. Outputs are children of the root container and have no | ||
189 | * order in the tree structure. | ||
190 | */ | ||
191 | struct sway_container *output_create(struct sway_output *sway_output); | ||
192 | |||
193 | /** | ||
194 | * Create a new workspace container. Workspaces are children of an output | ||
195 | * container and are ordered alphabetically by name. | ||
196 | */ | ||
197 | struct sway_container *workspace_create(struct sway_container *output, | ||
198 | const char *name); | ||
199 | |||
200 | /* | 179 | /* |
201 | * Create a new view container. A view can be a child of a workspace container | 180 | * Create a new view container. A view can be a child of a workspace container |
202 | * or a container container and are rendered in the order and structure of | 181 | * or a container container and are rendered in the order and structure of |
@@ -205,9 +184,9 @@ struct sway_container *workspace_create(struct sway_container *output, | |||
205 | struct sway_container *container_view_create( | 184 | struct sway_container *container_view_create( |
206 | struct sway_container *sibling, struct sway_view *sway_view); | 185 | struct sway_container *sibling, struct sway_view *sway_view); |
207 | 186 | ||
208 | void container_free(struct sway_container *cont); | 187 | void container_destroy(struct sway_container *con); |
209 | 188 | ||
210 | struct sway_container *container_destroy(struct sway_container *container); | 189 | void container_begin_destroy(struct sway_container *con); |
211 | 190 | ||
212 | struct sway_container *container_close(struct sway_container *container); | 191 | struct sway_container *container_close(struct sway_container *container); |
213 | 192 | ||
@@ -255,10 +234,7 @@ void container_update_textures_recursive(struct sway_container *con); | |||
255 | 234 | ||
256 | void container_damage_whole(struct sway_container *container); | 235 | void container_damage_whole(struct sway_container *container); |
257 | 236 | ||
258 | bool container_reap_empty(struct sway_container *con); | 237 | struct sway_container *container_reap_empty(struct sway_container *con); |
259 | |||
260 | struct sway_container *container_reap_empty_recursive( | ||
261 | struct sway_container *con); | ||
262 | 238 | ||
263 | struct sway_container *container_flatten(struct sway_container *container); | 239 | struct sway_container *container_flatten(struct sway_container *container); |
264 | 240 | ||
diff --git a/include/sway/tree/root.h b/include/sway/tree/root.h index d1f04a96..ee4bd836 100644 --- a/include/sway/tree/root.h +++ b/include/sway/tree/root.h | |||
@@ -24,6 +24,7 @@ struct sway_root { | |||
24 | struct wl_list outputs; // sway_output::link | 24 | struct wl_list outputs; // sway_output::link |
25 | 25 | ||
26 | list_t *scratchpad; // struct sway_container | 26 | list_t *scratchpad; // struct sway_container |
27 | list_t *saved_workspaces; // For when there's no connected outputs | ||
27 | 28 | ||
28 | struct { | 29 | struct { |
29 | struct wl_signal new_container; | 30 | struct wl_signal new_container; |
diff --git a/include/sway/tree/view.h b/include/sway/tree/view.h index 5fdecc2b..f73ce571 100644 --- a/include/sway/tree/view.h +++ b/include/sway/tree/view.h | |||
@@ -284,10 +284,10 @@ void view_for_each_popup(struct sway_view *view, | |||
284 | void view_init(struct sway_view *view, enum sway_view_type type, | 284 | void view_init(struct sway_view *view, enum sway_view_type type, |
285 | const struct sway_view_impl *impl); | 285 | const struct sway_view_impl *impl); |
286 | 286 | ||
287 | void view_free(struct sway_view *view); | ||
288 | |||
289 | void view_destroy(struct sway_view *view); | 287 | void view_destroy(struct sway_view *view); |
290 | 288 | ||
289 | void view_begin_destroy(struct sway_view *view); | ||
290 | |||
291 | void view_map(struct sway_view *view, struct wlr_surface *wlr_surface); | 291 | void view_map(struct sway_view *view, struct wlr_surface *wlr_surface); |
292 | 292 | ||
293 | void view_unmap(struct sway_view *view); | 293 | void view_unmap(struct sway_view *view); |
diff --git a/include/sway/tree/workspace.h b/include/sway/tree/workspace.h index 35c91017..efcb7c69 100644 --- a/include/sway/tree/workspace.h +++ b/include/sway/tree/workspace.h | |||
@@ -18,6 +18,15 @@ extern char *prev_workspace_name; | |||
18 | 18 | ||
19 | struct sway_container *workspace_get_initial_output(const char *name); | 19 | struct sway_container *workspace_get_initial_output(const char *name); |
20 | 20 | ||
21 | struct sway_container *workspace_create(struct sway_container *output, | ||
22 | const char *name); | ||
23 | |||
24 | void workspace_destroy(struct sway_container *workspace); | ||
25 | |||
26 | void workspace_begin_destroy(struct sway_container *workspace); | ||
27 | |||
28 | void workspace_consider_destroy(struct sway_container *ws); | ||
29 | |||
21 | char *workspace_next_name(const char *output_name); | 30 | char *workspace_next_name(const char *output_name); |
22 | 31 | ||
23 | bool workspace_switch(struct sway_container *workspace, | 32 | bool workspace_switch(struct sway_container *workspace, |