aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2019-02-16 23:30:19 +0100
committerDrew DeVault <sir@cmpwn.com>2019-02-18 15:11:48 -0500
commiteaec82abd20ebe847bdf17f28b0667b449a3f0bc (patch)
tree660d51aded919c466e43eede10dc30789fbd0e01 /include
parentc6b43359e774ce1422e9d469c5081d6a7193dedb (diff)
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.h8
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 {
struct sway_node node;
struct wlr_output *wlr_output;
struct sway_server *server;
+ struct wl_list link;
struct wl_list layers[4]; // sway_layer_surface::link
struct wlr_box usable_area;
@@ -36,6 +37,8 @@ struct sway_output {
struct sway_output_state current;
+ struct wl_client *swaybg_client;
+
struct wl_listener destroy;
struct wl_listener mode;
struct wl_listener transform;
@@ -43,10 +46,7 @@ struct sway_output {
struct wl_listener present;
struct wl_listener damage_destroy;
struct wl_listener damage_frame;
-
- struct wl_list link;
-
- pid_t bg_pid;
+ struct wl_listener swaybg_client_destroy;
struct {
struct wl_signal destroy;