Something went wrong. Try again.
extremely opinionated bar. you don't want to use this
Something went wrong. Try again.
615 B · 36 lines
C
at main
12345678910111213141516171819202122232425262728293031323334353637#include "bar/protocol.h"#include "bar/util.h"
#include <stdlib.h>
protocol_t *sway_compositor_new(void);protocol_t *niri_compositor_new(void);
protocol_t *protocol_detect(void){ protocol_t *p = nullptr;
if (getenv("NIRI_SOCKET")) p = niri_compositor_new(); else if (getenv("SWAYSOCK")) p = sway_compositor_new();
if (p) { if (p->connect(p)) return p; protocol_destroy(p); }
warn("no supported compositor (SWAYSOCK / NIRI_SOCKET unset)"); return nullptr;}
void protocol_destroy(protocol_t *p){ if (!p) return; if (p->disconnect) p->disconnect(p); free(p->internal); free(p);}