diff options
author | Mikkel Oscar Lyderik <mikkeloscar@gmail.com> | 2016-01-24 02:34:20 +0100 |
---|---|---|
committer | Mikkel Oscar Lyderik <mikkeloscar@gmail.com> | 2016-01-24 14:22:19 +0100 |
commit | aa6ad09183d623647bc8fd5315721bd8b196cafa (patch) | |
tree | beab8b4222dd5a5a97394a9da0b8704f1b6e5df8 /swaybar/ipc.c | |
parent | swaybar: move core functionality to state.c (diff) | |
download | sway-aa6ad09183d623647bc8fd5315721bd8b196cafa.tar.gz sway-aa6ad09183d623647bc8fd5315721bd8b196cafa.tar.zst sway-aa6ad09183d623647bc8fd5315721bd8b196cafa.zip |
swaybar: rename state to bar
Diffstat (limited to 'swaybar/ipc.c')
-rw-r--r-- | swaybar/ipc.c | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/swaybar/ipc.c b/swaybar/ipc.c index 884d02ff..547041ce 100644 --- a/swaybar/ipc.c +++ b/swaybar/ipc.c | |||
@@ -7,14 +7,14 @@ | |||
7 | #include "config.h" | 7 | #include "config.h" |
8 | #include "ipc.h" | 8 | #include "ipc.h" |
9 | 9 | ||
10 | static void ipc_parse_config(struct swaybar_config *config, const char *payload) { | 10 | static void ipc_parse_config(struct config *config, const char *payload) { |
11 | json_object *bar_config = json_tokener_parse(payload); | 11 | json_object *bar_config = json_tokener_parse(payload); |
12 | json_object *tray_output, *mode, *hidden_state, *position, *status_command; | 12 | json_object *tray_output, *mode, *hidden_bar, *position, *status_command; |
13 | json_object *font, *bar_height, *workspace_buttons, *strip_workspace_numbers; | 13 | json_object *font, *bar_height, *workspace_buttons, *strip_workspace_numbers; |
14 | json_object *binding_mode_indicator, *verbose, *colors, *sep_symbol; | 14 | json_object *binding_mode_indicator, *verbose, *colors, *sep_symbol; |
15 | json_object_object_get_ex(bar_config, "tray_output", &tray_output); | 15 | json_object_object_get_ex(bar_config, "tray_output", &tray_output); |
16 | json_object_object_get_ex(bar_config, "mode", &mode); | 16 | json_object_object_get_ex(bar_config, "mode", &mode); |
17 | json_object_object_get_ex(bar_config, "hidden_state", &hidden_state); | 17 | json_object_object_get_ex(bar_config, "hidden_bar", &hidden_bar); |
18 | json_object_object_get_ex(bar_config, "position", &position); | 18 | json_object_object_get_ex(bar_config, "position", &position); |
19 | json_object_object_get_ex(bar_config, "status_command", &status_command); | 19 | json_object_object_get_ex(bar_config, "status_command", &status_command); |
20 | json_object_object_get_ex(bar_config, "font", &font); | 20 | json_object_object_get_ex(bar_config, "font", &font); |
@@ -150,14 +150,14 @@ static void ipc_parse_config(struct swaybar_config *config, const char *payload) | |||
150 | json_object_put(bar_config); | 150 | json_object_put(bar_config); |
151 | } | 151 | } |
152 | 152 | ||
153 | static void ipc_update_workspaces(struct swaybar_state *state) { | 153 | static void ipc_update_workspaces(struct bar *bar) { |
154 | if (state->output->workspaces) { | 154 | if (bar->output->workspaces) { |
155 | free_workspaces(state->output->workspaces); | 155 | free_workspaces(bar->output->workspaces); |
156 | } | 156 | } |
157 | state->output->workspaces = create_list(); | 157 | bar->output->workspaces = create_list(); |
158 | 158 | ||
159 | uint32_t len = 0; | 159 | uint32_t len = 0; |
160 | char *res = ipc_single_command(state->ipc_socketfd, IPC_GET_WORKSPACES, NULL, &len); | 160 | char *res = ipc_single_command(bar->ipc_socketfd, IPC_GET_WORKSPACES, NULL, &len); |
161 | json_object *results = json_tokener_parse(res); | 161 | json_object *results = json_tokener_parse(res); |
162 | if (!results) { | 162 | if (!results) { |
163 | free(res); | 163 | free(res); |
@@ -178,14 +178,14 @@ static void ipc_update_workspaces(struct swaybar_state *state) { | |||
178 | json_object_object_get_ex(ws_json, "output", &out); | 178 | json_object_object_get_ex(ws_json, "output", &out); |
179 | json_object_object_get_ex(ws_json, "urgent", &urgent); | 179 | json_object_object_get_ex(ws_json, "urgent", &urgent); |
180 | 180 | ||
181 | if (strcmp(json_object_get_string(out), state->output->name) == 0) { | 181 | if (strcmp(json_object_get_string(out), bar->output->name) == 0) { |
182 | struct workspace *ws = malloc(sizeof(struct workspace)); | 182 | struct workspace *ws = malloc(sizeof(struct workspace)); |
183 | ws->num = json_object_get_int(num); | 183 | ws->num = json_object_get_int(num); |
184 | ws->name = strdup(json_object_get_string(name)); | 184 | ws->name = strdup(json_object_get_string(name)); |
185 | ws->visible = json_object_get_boolean(visible); | 185 | ws->visible = json_object_get_boolean(visible); |
186 | ws->focused = json_object_get_boolean(focused); | 186 | ws->focused = json_object_get_boolean(focused); |
187 | ws->urgent = json_object_get_boolean(urgent); | 187 | ws->urgent = json_object_get_boolean(urgent); |
188 | list_add(state->output->workspaces, ws); | 188 | list_add(bar->output->workspaces, ws); |
189 | } | 189 | } |
190 | } | 190 | } |
191 | 191 | ||
@@ -193,36 +193,36 @@ static void ipc_update_workspaces(struct swaybar_state *state) { | |||
193 | free(res); | 193 | free(res); |
194 | } | 194 | } |
195 | 195 | ||
196 | void ipc_bar_init(struct swaybar_state *state, int outputi, const char *bar_id) { | 196 | void ipc_bar_init(struct bar *bar, int outputi, const char *bar_id) { |
197 | uint32_t len = 0; | 197 | uint32_t len = 0; |
198 | char *res = ipc_single_command(state->ipc_socketfd, IPC_GET_OUTPUTS, NULL, &len); | 198 | char *res = ipc_single_command(bar->ipc_socketfd, IPC_GET_OUTPUTS, NULL, &len); |
199 | json_object *outputs = json_tokener_parse(res); | 199 | json_object *outputs = json_tokener_parse(res); |
200 | json_object *info = json_object_array_get_idx(outputs, outputi); | 200 | json_object *info = json_object_array_get_idx(outputs, outputi); |
201 | json_object *name; | 201 | json_object *name; |
202 | json_object_object_get_ex(info, "name", &name); | 202 | json_object_object_get_ex(info, "name", &name); |
203 | state->output->name = strdup(json_object_get_string(name)); | 203 | bar->output->name = strdup(json_object_get_string(name)); |
204 | free(res); | 204 | free(res); |
205 | json_object_put(outputs); | 205 | json_object_put(outputs); |
206 | 206 | ||
207 | len = strlen(bar_id); | 207 | len = strlen(bar_id); |
208 | res = ipc_single_command(state->ipc_socketfd, IPC_GET_BAR_CONFIG, bar_id, &len); | 208 | res = ipc_single_command(bar->ipc_socketfd, IPC_GET_BAR_CONFIG, bar_id, &len); |
209 | 209 | ||
210 | ipc_parse_config(state->config, res); | 210 | ipc_parse_config(bar->config, res); |
211 | free(res); | 211 | free(res); |
212 | 212 | ||
213 | const char *subscribe_json = "[ \"workspace\", \"mode\" ]"; | 213 | const char *subscribe_json = "[ \"workspace\", \"mode\" ]"; |
214 | len = strlen(subscribe_json); | 214 | len = strlen(subscribe_json); |
215 | res = ipc_single_command(state->ipc_event_socketfd, IPC_SUBSCRIBE, subscribe_json, &len); | 215 | res = ipc_single_command(bar->ipc_event_socketfd, IPC_SUBSCRIBE, subscribe_json, &len); |
216 | free(res); | 216 | free(res); |
217 | 217 | ||
218 | ipc_update_workspaces(state); | 218 | ipc_update_workspaces(bar); |
219 | } | 219 | } |
220 | 220 | ||
221 | bool handle_ipc_event(struct swaybar_state *state) { | 221 | bool handle_ipc_event(struct bar *bar) { |
222 | struct ipc_response *resp = ipc_recv_response(state->ipc_event_socketfd); | 222 | struct ipc_response *resp = ipc_recv_response(bar->ipc_event_socketfd); |
223 | switch (resp->type) { | 223 | switch (resp->type) { |
224 | case IPC_EVENT_WORKSPACE: | 224 | case IPC_EVENT_WORKSPACE: |
225 | ipc_update_workspaces(state); | 225 | ipc_update_workspaces(bar); |
226 | break; | 226 | break; |
227 | case IPC_EVENT_MODE: { | 227 | case IPC_EVENT_MODE: { |
228 | json_object *result = json_tokener_parse(resp->payload); | 228 | json_object *result = json_tokener_parse(resp->payload); |
@@ -235,11 +235,11 @@ bool handle_ipc_event(struct swaybar_state *state) { | |||
235 | if (json_object_object_get_ex(result, "change", &json_change)) { | 235 | if (json_object_object_get_ex(result, "change", &json_change)) { |
236 | const char *change = json_object_get_string(json_change); | 236 | const char *change = json_object_get_string(json_change); |
237 | 237 | ||
238 | free(state->config->mode); | 238 | free(bar->config->mode); |
239 | if (strcmp(change, "default") == 0) { | 239 | if (strcmp(change, "default") == 0) { |
240 | state->config->mode = NULL; | 240 | bar->config->mode = NULL; |
241 | } else { | 241 | } else { |
242 | state->config->mode = strdup(change); | 242 | bar->config->mode = strdup(change); |
243 | } | 243 | } |
244 | } else { | 244 | } else { |
245 | sway_log(L_ERROR, "failed to parse response"); | 245 | sway_log(L_ERROR, "failed to parse response"); |