#include #include #include #include #include #include int main(int argc, char **argv) { Display *display; Window reference; Window root; if (argc > 2) { char *name; name = strrchr(argv[0], '/'); name = name ? name+1 : argv[0]; fprintf(stderr, "usage: %s [window-id]\n", name); exit(1); } if ((display = XOpenDisplay(NULL)) == NULL) { fprintf(stderr, "cannot open display\n"); exit(1); } if (argc == 2) { int x, y; unsigned int width, height, border, depth; reference = strtol(argv[1], NULL, 10); XGetGeometry( display, reference, &root, &x, &y, &width, &height, &border, &depth); } else { root = DefaultRootWindow(display); } printf("%ld\n", root); XCloseDisplay(display); exit(0); }