summaryrefslogtreecommitdiff
path: root/include/swaybar/tray/tray.h
diff options
context:
space:
mode:
authorDrew DeVault <[email protected]>2018-12-31 15:43:23 -0500
committerGitHub <[email protected]>2018-12-31 15:43:23 -0500
commit3d7c20f062bebe39199d3872e5b64d5e8d61d100 (patch)
tree93b8ddb51873cae14db8d5f07db74ca96236f184 /include/swaybar/tray/tray.h
parent4a3ada303b948ce2bdf21c7e6254005c85b000ea (diff)
parent9e31f5d79ce9de8f1c73013b792aa94f355a1983 (diff)
Merge pull request #3249 from ianyfan/tray
Swaybar tray
Diffstat (limited to 'include/swaybar/tray/tray.h')
-rw-r--r--include/swaybar/tray/tray.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/include/swaybar/tray/tray.h b/include/swaybar/tray/tray.h
new file mode 100644
index 00000000..8958b69a
--- /dev/null
+++ b/include/swaybar/tray/tray.h
@@ -0,0 +1,40 @@
+#ifndef _SWAYBAR_TRAY_TRAY_H
+#define _SWAYBAR_TRAY_TRAY_H
+
+#include "config.h"
+#ifdef HAVE_SYSTEMD
+#include <systemd/sd-bus.h>
+#elif HAVE_ELOGIND
+#include <elogind/sd-bus.h>
+#endif
+#include <cairo.h>
+#include <stdint.h>
+#include "swaybar/tray/host.h"
+#include "list.h"
+
+struct swaybar;
+struct swaybar_output;
+struct swaybar_watcher;
+
+struct swaybar_tray {
+ struct swaybar *bar;
+
+ int fd;
+ sd_bus *bus;
+
+ struct swaybar_host host_xdg;
+ struct swaybar_host host_kde;
+ list_t *items; // struct swaybar_sni *
+ struct swaybar_watcher *watcher_xdg;
+ struct swaybar_watcher *watcher_kde;
+
+ list_t *basedirs; // char *
+ list_t *themes; // struct swaybar_theme *
+};
+
+struct swaybar_tray *create_tray(struct swaybar *bar);
+void destroy_tray(struct swaybar_tray *tray);
+void tray_in(int fd, short mask, void *data);
+uint32_t render_tray(cairo_t *cairo, struct swaybar_output *output, double *x);
+
+#endif