aboutsummaryrefslogtreecommitdiff
path: root/swaybar/state.h
diff options
context:
space:
mode:
authorMikkel Oscar Lyderik <mikkeloscar@gmail.com>2016-01-23 20:55:01 +0100
committerMikkel Oscar Lyderik <mikkeloscar@gmail.com>2016-01-24 14:22:19 +0100
commita6349a2444571624c792ca222dff57c7f1711c71 (patch)
tree486e5df9eff701f75ce05d80a3e16c397ad596dc /swaybar/state.h
parentbb986cb33637147663c115c8b8f8bdff170f23a8 (diff)
downloadsway-a6349a2444571624c792ca222dff57c7f1711c71.tar.xz
swaybar: feactor render, statusline
Diffstat (limited to 'swaybar/state.h')
-rw-r--r--swaybar/state.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/swaybar/state.h b/swaybar/state.h
new file mode 100644
index 00000000..5949548e
--- /dev/null
+++ b/swaybar/state.h
@@ -0,0 +1,43 @@
+#ifndef _SWAYBAR_STATE_H
+#define _SWAYBAR_STATE_H
+
+#include "client/registry.h"
+#include "client/window.h"
+
+struct swaybar_state {
+ struct swaybar_config *config;
+ struct status_line *status;
+ struct output *output;
+ /* list_t *outputs; */
+
+ int ipc_event_socketfd;
+ int ipc_socketfd;
+ int status_read_fd;
+ pid_t status_command_pid;
+};
+
+struct output {
+ struct window *window;
+ struct registry *registry;
+ list_t *workspaces;
+};
+
+struct workspace {
+ int num;
+ char *name;
+ bool focused;
+ bool visible;
+ bool urgent;
+};
+
+/**
+ * Initialize state.
+ */
+struct swaybar_state *init_state();
+
+/**
+ * free workspace struct.
+ */
+void free_workspace(void *item);
+
+#endif /* _SWAYBAR_STATE_H */