mirror of
https://github.com/swaywm/sway.git
synced 2024-11-14 14:34:07 +01:00
30 lines
619 B
C
30 lines
619 B
C
|
#include <stdlib.h>
|
||
|
|
||
|
#include "list.h"
|
||
|
#include "config.h"
|
||
|
#include "status_line.h"
|
||
|
#include "state.h"
|
||
|
|
||
|
struct swaybar_state *init_state() {
|
||
|
struct swaybar_state *state = calloc(1, sizeof(struct swaybar_state));
|
||
|
state->config = init_config();
|
||
|
state->status = init_status_line();
|
||
|
state->output = malloc(sizeof(struct output));
|
||
|
state->output->window = NULL;
|
||
|
state->output->registry = NULL;
|
||
|
state->output->workspaces = create_list();
|
||
|
|
||
|
return state;
|
||
|
}
|
||
|
|
||
|
void free_workspace(void *item) {
|
||
|
if (!item) {
|
||
|
return;
|
||
|
}
|
||
|
struct workspace *ws = (struct workspace *)item;
|
||
|
if (ws->name) {
|
||
|
free(ws->name);
|
||
|
}
|
||
|
free(ws);
|
||
|
}
|