aboutsummaryrefslogtreecommitdiffstats
path: root/include/swaybar
diff options
context:
space:
mode:
authorLibravatar Brian Ashworth <bosrsf04@gmail.com>2019-09-02 21:41:11 -0400
committerLibravatar Drew DeVault <sir@cmpwn.com>2019-09-04 16:48:50 -1000
commit1fd2c6ba498e61f4fe823bf552f9d2fce8612de4 (patch)
tree8e2d9adab3451f1f05c76340d466a442c840e558 /include/swaybar
parentseatop_default: only focus container on press (diff)
downloadsway-1fd2c6ba498e61f4fe823bf552f9d2fce8612de4.tar.gz
sway-1fd2c6ba498e61f4fe823bf552f9d2fce8612de4.tar.zst
sway-1fd2c6ba498e61f4fe823bf552f9d2fce8612de4.zip
swaybar: complete barconfig_update event handling
This adds complete support for the barconfig_update ipc event. This also changes the bar command and subcommand handlers to correctly emit the event. This makes it so all bar subcommands other than id and swaybar_command are dynamically changeable at runtime. sway-bar.5 has been updated accordingly
Diffstat (limited to 'include/swaybar')
-rw-r--r--include/swaybar/bar.h5
-rw-r--r--include/swaybar/config.h5
2 files changed, 8 insertions, 2 deletions
diff --git a/include/swaybar/bar.h b/include/swaybar/bar.h
index 10984ab0..545a66a8 100644
--- a/include/swaybar/bar.h
+++ b/include/swaybar/bar.h
@@ -41,6 +41,7 @@ struct swaybar {
41 int ipc_socketfd; 41 int ipc_socketfd;
42 42
43 struct wl_list outputs; // swaybar_output::link 43 struct wl_list outputs; // swaybar_output::link
44 struct wl_list unused_outputs; // swaybar_output::link
44 struct wl_list seats; // swaybar_seat::link 45 struct wl_list seats; // swaybar_seat::link
45 46
46#if HAVE_TRAY 47#if HAVE_TRAY
@@ -109,4 +110,8 @@ void set_bar_dirty(struct swaybar *bar);
109bool determine_bar_visibility(struct swaybar *bar, bool moving_layer); 110bool determine_bar_visibility(struct swaybar *bar, bool moving_layer);
110void free_workspaces(struct wl_list *list); 111void free_workspaces(struct wl_list *list);
111 112
113void status_in(int fd, short mask, void *data);
114
115void destroy_layer_surface(struct swaybar_output *output);
116
112#endif 117#endif
diff --git a/include/swaybar/config.h b/include/swaybar/config.h
index ec042e51..688fa2d7 100644
--- a/include/swaybar/config.h
+++ b/include/swaybar/config.h
@@ -16,7 +16,6 @@ struct box_colors {
16struct config_output { 16struct config_output {
17 struct wl_list link; // swaybar_config::outputs 17 struct wl_list link; // swaybar_config::outputs
18 char *name; 18 char *name;
19 size_t index;
20}; 19};
21 20
22struct swaybar_binding { 21struct swaybar_binding {
@@ -41,7 +40,6 @@ struct swaybar_config {
41 bool workspace_buttons; 40 bool workspace_buttons;
42 list_t *bindings; 41 list_t *bindings;
43 struct wl_list outputs; // config_output::link 42 struct wl_list outputs; // config_output::link
44 bool all_outputs;
45 int height; 43 int height;
46 int status_padding; 44 int status_padding;
47 int status_edge_padding; 45 int status_edge_padding;
@@ -83,10 +81,13 @@ struct tray_binding {
83 char *command; 81 char *command;
84 struct wl_list link; // struct tray_binding::link 82 struct wl_list link; // struct tray_binding::link
85}; 83};
84
85void free_tray_binding(struct tray_binding *binding);
86#endif 86#endif
87 87
88struct swaybar_config *init_config(void); 88struct swaybar_config *init_config(void);
89void free_config(struct swaybar_config *config); 89void free_config(struct swaybar_config *config);
90uint32_t parse_position(const char *position); 90uint32_t parse_position(const char *position);
91void free_binding(struct swaybar_binding *binding);
91 92
92#endif 93#endif