From fc8f01587cafa361e97abc30234094859b262307 Mon Sep 17 00:00:00 2001 From: Jakob Kaivo Date: Tue, 26 Apr 2022 16:24:00 -0400 Subject: initial commit --- xbar.c | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 xbar.c (limited to 'xbar.c') diff --git a/xbar.c b/xbar.c new file mode 100644 index 0000000..01090fa --- /dev/null +++ b/xbar.c @@ -0,0 +1,55 @@ +/* MAJE_LDLIB=-lX11 */ + +#define _POSIX_C_SOURCE 200809L +#include +#include +#include +#include +#include + +int main(int argc, char *argv[]) +{ + int c = 0; + while ((c = getopt(argc, argv, "")) != -1) { + switch (c) { + default: + return 1; + } + } + + Display *dpy = XOpenDisplay(""); + if (dpy == NULL) { + fprintf(stderr, "xbar: can't open display\n"); + return 1; + } + + int screen = DefaultScreen(dpy); + int width = DisplayWidth(dpy, screen); + int height = 20; + + Window win = XCreateSimpleWindow(dpy, XDefaultRootWindow(dpy), + 0, 0, width, height, 0, + BlackPixel(dpy, screen), BlackPixel(dpy, screen)); + XSelectInput(dpy, win, ExposureMask | KeyPressMask); + XMapWindow(dpy, win); + + for (;;) { + XEvent e; + XNextEvent(dpy, &e); + switch (e.type) { + case Expose: + XDrawString(dpy, win, DefaultGC(dpy, screen), 0, 0, + "hello", strlen("hello")); + break; + + case KeyPress: + printf("keypress\n"); + break; + + default: + break; + } + } + + return 0; +} -- cgit v1.2.1