diff options
author | Ryan Dwyer <ryandwyer1@gmail.com> | 2019-01-25 08:29:21 +1000 |
---|---|---|
committer | Ryan Dwyer <ryandwyer1@gmail.com> | 2019-01-25 08:29:21 +1000 |
commit | 20aa8ee67dc528299dbc8735220a1c081c7ff9f6 (patch) | |
tree | 685de48be3db51fc01510ccf051e2b63a4655fba /include/sway | |
parent | Update for swaywm/wlroots#1402 (diff) | |
download | sway-20aa8ee67dc528299dbc8735220a1c081c7ff9f6.tar.gz sway-20aa8ee67dc528299dbc8735220a1c081c7ff9f6.tar.zst sway-20aa8ee67dc528299dbc8735220a1c081c7ff9f6.zip |
Implement fullscreen global
Diffstat (limited to 'include/sway')
-rw-r--r-- | include/sway/tree/container.h | 18 | ||||
-rw-r--r-- | include/sway/tree/root.h | 2 |
2 files changed, 17 insertions, 3 deletions
diff --git a/include/sway/tree/container.h b/include/sway/tree/container.h index 9a432cb2..f0d0b3ce 100644 --- a/include/sway/tree/container.h +++ b/include/sway/tree/container.h | |||
@@ -25,6 +25,12 @@ enum sway_container_border { | |||
25 | B_CSD, | 25 | B_CSD, |
26 | }; | 26 | }; |
27 | 27 | ||
28 | enum sway_fullscreen_mode { | ||
29 | FULLSCREEN_NONE, | ||
30 | FULLSCREEN_WORKSPACE, | ||
31 | FULLSCREEN_GLOBAL, | ||
32 | }; | ||
33 | |||
28 | struct sway_root; | 34 | struct sway_root; |
29 | struct sway_output; | 35 | struct sway_output; |
30 | struct sway_workspace; | 36 | struct sway_workspace; |
@@ -38,7 +44,7 @@ struct sway_container_state { | |||
38 | double x, y; | 44 | double x, y; |
39 | double width, height; | 45 | double width, height; |
40 | 46 | ||
41 | bool is_fullscreen; | 47 | enum sway_fullscreen_mode fullscreen_mode; |
42 | 48 | ||
43 | struct sway_workspace *workspace; | 49 | struct sway_workspace *workspace; |
44 | struct sway_container *parent; | 50 | struct sway_container *parent; |
@@ -85,7 +91,7 @@ struct sway_container { | |||
85 | double content_x, content_y; | 91 | double content_x, content_y; |
86 | int content_width, content_height; | 92 | int content_width, content_height; |
87 | 93 | ||
88 | bool is_fullscreen; | 94 | enum sway_fullscreen_mode fullscreen_mode; |
89 | 95 | ||
90 | enum sway_container_border border; | 96 | enum sway_container_border border; |
91 | 97 | ||
@@ -249,7 +255,13 @@ bool container_has_urgent_child(struct sway_container *container); | |||
249 | */ | 255 | */ |
250 | void container_end_mouse_operation(struct sway_container *container); | 256 | void container_end_mouse_operation(struct sway_container *container); |
251 | 257 | ||
252 | void container_set_fullscreen(struct sway_container *container, bool enable); | 258 | void container_set_fullscreen(struct sway_container *con, |
259 | enum sway_fullscreen_mode mode); | ||
260 | |||
261 | /** | ||
262 | * Convenience function. | ||
263 | */ | ||
264 | void container_fullscreen_disable(struct sway_container *con); | ||
253 | 265 | ||
254 | /** | 266 | /** |
255 | * Return true if the container is floating, or a child of a floating split | 267 | * Return true if the container is floating, or a child of a floating split |
diff --git a/include/sway/tree/root.h b/include/sway/tree/root.h index 8f4deaa7..9ff45eb5 100644 --- a/include/sway/tree/root.h +++ b/include/sway/tree/root.h | |||
@@ -35,6 +35,8 @@ struct sway_root { | |||
35 | // For when there's no connected outputs | 35 | // For when there's no connected outputs |
36 | struct sway_output *noop_output; | 36 | struct sway_output *noop_output; |
37 | 37 | ||
38 | struct sway_container *fullscreen_global; | ||
39 | |||
38 | struct { | 40 | struct { |
39 | struct wl_signal new_node; | 41 | struct wl_signal new_node; |
40 | } events; | 42 | } events; |