31 lines
648 B
C
31 lines
648 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();
|
|
state->output->name = NULL;
|
|
|
|
return state;
|
|
}
|
|
|
|
void free_workspace(void *item) {
|
|
if (!item) {
|
|
return;
|
|
}
|
|
struct workspace *ws = (struct workspace *)item;
|
|
if (ws->name) {
|
|
free(ws->name);
|
|
}
|
|
free(ws);
|
|
}
|