diff options
Diffstat (limited to 'commands/helpers/list-outputs.c')
-rw-r--r-- | commands/helpers/list-outputs.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/commands/helpers/list-outputs.c b/commands/helpers/list-outputs.c new file mode 100644 index 0000000..183258c --- /dev/null +++ b/commands/helpers/list-outputs.c @@ -0,0 +1,33 @@ +#include <stdio.h> +#include <X11/extensions/Xrandr.h> + +int main(int argc, char **argv) +{ + Display *dpy = XOpenDisplay(NULL); + XRRScreenResources *rr; + XRROutputInfo *output; + int i; + + XSynchronize(dpy, 1); + + rr = XRRGetScreenResources(dpy, DefaultRootWindow(dpy)); + + if (rr != NULL) { + for (i = 0; i < rr->noutput; i++) { + output = XRRGetOutputInfo(dpy, rr, rr->outputs[i]); + + if (output->connection == RR_Connected) { + printf("%s\n", output->name); + } + + XRRFreeOutputInfo(output); + } + } + + XRRFreeScreenResources(rr); + + XSync(dpy, 1); + XCloseDisplay(dpy); + + return 0; +} |