aboutsummaryrefslogtreecommitdiffstats
path: root/window-xlib.h
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2014-04-08 22:04:26 -0400
committerJesse Luehrs <doy@tozt.net>2014-04-08 22:04:26 -0400
commitbae22b3118742113a53d3496ee84ad577481077c (patch)
treecd4046bf2215f106e5041ef93e03360670152a96 /window-xlib.h
parent48da503fbfe7c376842dc9b05c69875f5b6092a6 (diff)
downloadrunes-bae22b3118742113a53d3496ee84ad577481077c.tar.gz
runes-bae22b3118742113a53d3496ee84ad577481077c.zip
a bunch more refactoring
Diffstat (limited to 'window-xlib.h')
-rw-r--r--window-xlib.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/window-xlib.h b/window-xlib.h
new file mode 100644
index 0000000..b611cfb
--- /dev/null
+++ b/window-xlib.h
@@ -0,0 +1,36 @@
+#ifndef _RUNES_WINDOW_XLIB_H
+#define _RUNES_XLIB_H
+
+#include <X11/Xlib.h>
+
+enum runes_atoms {
+ RUNES_ATOM_WM_DELETE_WINDOW,
+ RUNES_ATOM_NET_WM_PING,
+ RUNES_NUM_PROTOCOL_ATOMS,
+ RUNES_ATOM_NET_WM_PID = 2,
+ RUNES_ATOM_NET_WM_ICON_NAME,
+ RUNES_ATOM_NET_WM_NAME,
+ RUNES_ATOM_UTF8_STRING,
+ RUNES_NUM_ATOMS
+};
+
+struct runes_window {
+ Display *dpy;
+ Window w;
+ GC gc;
+ XIC ic;
+
+ Atom atoms[RUNES_NUM_ATOMS];
+};
+
+typedef struct {
+ RunesLoopData data;
+ XEvent e;
+} RunesXlibLoopData;
+
+void runes_window_backend_init(RunesTerm *t, int argc, char *argv[]);
+cairo_surface_t *runes_window_backend_surface_create(RunesTerm *t);
+void runes_window_backend_loop_init(RunesTerm *t, uv_loop_t *loop);
+void runes_window_backend_cleanup(RunesTerm *t);
+
+#endif