diff options
author | emersion <contact@emersion.fr> | 2019-02-16 23:30:19 +0100 |
---|---|---|
committer | Brian Ashworth <bosrsf04@gmail.com> | 2019-02-16 19:11:22 -0500 |
commit | 7baaa3a0f80a28f58a3f95f7c3c832cb109b2aab (patch) | |
tree | d2596353b9badb5e0d0709fb9ed67ad1edb9e7ec /include | |
parent | Fix Meson subproject boolean default options (diff) | |
download | sway-7baaa3a0f80a28f58a3f95f7c3c832cb109b2aab.tar.gz sway-7baaa3a0f80a28f58a3f95f7c3c832cb109b2aab.tar.zst sway-7baaa3a0f80a28f58a3f95f7c3c832cb109b2aab.zip |
Disconnect swaybg instead of killing it
This is much more reliable. This also fixes race conditions when killing swaybg
while it's doing a wl_display_roundtrip.
Diffstat (limited to 'include')
-rw-r--r-- | include/sway/output.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/include/sway/output.h b/include/sway/output.h index 479897ef..ea7a2174 100644 --- a/include/sway/output.h +++ b/include/sway/output.h | |||
@@ -21,6 +21,7 @@ struct sway_output { | |||
21 | struct sway_node node; | 21 | struct sway_node node; |
22 | struct wlr_output *wlr_output; | 22 | struct wlr_output *wlr_output; |
23 | struct sway_server *server; | 23 | struct sway_server *server; |
24 | struct wl_list link; | ||
24 | 25 | ||
25 | struct wl_list layers[4]; // sway_layer_surface::link | 26 | struct wl_list layers[4]; // sway_layer_surface::link |
26 | struct wlr_box usable_area; | 27 | struct wlr_box usable_area; |
@@ -36,6 +37,8 @@ struct sway_output { | |||
36 | 37 | ||
37 | struct sway_output_state current; | 38 | struct sway_output_state current; |
38 | 39 | ||
40 | struct wl_client *swaybg_client; | ||
41 | |||
39 | struct wl_listener destroy; | 42 | struct wl_listener destroy; |
40 | struct wl_listener mode; | 43 | struct wl_listener mode; |
41 | struct wl_listener transform; | 44 | struct wl_listener transform; |
@@ -43,10 +46,7 @@ struct sway_output { | |||
43 | struct wl_listener present; | 46 | struct wl_listener present; |
44 | struct wl_listener damage_destroy; | 47 | struct wl_listener damage_destroy; |
45 | struct wl_listener damage_frame; | 48 | struct wl_listener damage_frame; |
46 | 49 | struct wl_listener swaybg_client_destroy; | |
47 | struct wl_list link; | ||
48 | |||
49 | pid_t bg_pid; | ||
50 | 50 | ||
51 | struct { | 51 | struct { |
52 | struct wl_signal destroy; | 52 | struct wl_signal destroy; |