aboutsummaryrefslogtreecommitdiffstats
path: root/include/sway/config.h
diff options
context:
space:
mode:
authorLibravatar Brian Ashworth <bosrsf04@gmail.com>2019-04-03 21:53:43 -0400
committerLibravatar Simon Ser <contact@emersion.fr>2019-04-04 20:08:21 +0300
commit75e7bd24ccb9731065bb7f8313aa53ba11ddc420 (patch)
tree2522f31626a21b42c2496a32266eafd3b7d66f50 /include/sway/config.h
parentidle_inhibit: fix crash during view destruction (diff)
downloadsway-75e7bd24ccb9731065bb7f8313aa53ba11ddc420.tar.gz
sway-75e7bd24ccb9731065bb7f8313aa53ba11ddc420.tar.zst
sway-75e7bd24ccb9731065bb7f8313aa53ba11ddc420.zip
swaybg: one instance for all outputs
This makes it so there will only be one swaybg instance running instead of one per output. swaybg's cli has been changed to a xrandr like interface, where you select an output and then change properties for that output and then select another output and repeat. This also makes it so swaybg is only killed and respawned when a background changes or when reloading.
Diffstat (limited to 'include/sway/config.h')
-rw-r--r--include/sway/config.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/include/sway/config.h b/include/sway/config.h
index d49120a0..fe06fb9d 100644
--- a/include/sway/config.h
+++ b/include/sway/config.h
@@ -424,7 +424,6 @@ struct sway_config {
424 list_t *active_bar_modifiers; 424 list_t *active_bar_modifiers;
425 struct sway_mode *current_mode; 425 struct sway_mode *current_mode;
426 struct bar_config *current_bar; 426 struct bar_config *current_bar;
427 char *swaybg_command;
428 uint32_t floating_mod; 427 uint32_t floating_mod;
429 bool floating_mod_inverse; 428 bool floating_mod_inverse;
430 uint32_t dragging_key; 429 uint32_t dragging_key;
@@ -447,6 +446,11 @@ struct sway_config {
447 enum sway_popup_during_fullscreen popup_during_fullscreen; 446 enum sway_popup_during_fullscreen popup_during_fullscreen;
448 bool xwayland; 447 bool xwayland;
449 448
449 // swaybg
450 char *swaybg_command;
451 struct wl_client *swaybg_client;
452 struct wl_listener swaybg_client_destroy;
453
450 // Flags 454 // Flags
451 enum focus_follows_mouse_mode focus_follows_mouse; 455 enum focus_follows_mouse_mode focus_follows_mouse;
452 enum mouse_warping_mode mouse_warping; 456 enum mouse_warping_mode mouse_warping;
@@ -607,6 +611,8 @@ void reset_outputs(void);
607 611
608void free_output_config(struct output_config *oc); 612void free_output_config(struct output_config *oc);
609 613
614bool spawn_swaybg(void);
615
610int workspace_output_cmp_workspace(const void *a, const void *b); 616int workspace_output_cmp_workspace(const void *a, const void *b);
611 617
612int sway_binding_cmp(const void *a, const void *b); 618int sway_binding_cmp(const void *a, const void *b);
@@ -625,8 +631,6 @@ void load_swaybar(struct bar_config *bar);
625 631
626void load_swaybars(void); 632void load_swaybars(void);
627 633
628void terminate_swaybg(pid_t pid);
629
630struct bar_config *default_bar_config(void); 634struct bar_config *default_bar_config(void);
631 635
632void free_bar_config(struct bar_config *bar); 636void free_bar_config(struct bar_config *bar);