#include #include #include #include int main(void) { xcb_connection_t *conn = xcb_connect(NULL, NULL); if (!conn) { printf("xcb_connect() failed; conn = %p\n", conn); return EXIT_FAILURE; } printf("connected to X; conn = %p\n", conn); xcb_screen_t *scr = xcb_setup_roots_iterator( xcb_get_setup(conn) ).data; xcb_window_t win = xcb_generate_id(conn); xcb_create_window(conn, XCB_COPY_FROM_PARENT, win, scr->root, 0, 0, 100, 100, 10, XCB_WINDOW_CLASS_INPUT_OUTPUT, scr->root_visual, 0, NULL); xcb_map_window(conn, win); xcb_flush(conn); printf("window created; win = %d\n", win); sleep(5); xcb_unmap_window(conn, win); xcb_flush(conn); printf("window destroyed; win = %d\n", win); xcb_disconnect(conn); puts("disconnected from X"); return EXIT_SUCCESS; }