[XCB] Expose Events des root Window empfangen
-
Hallo!
Ich möchte die Expose Events des root Window empfangen. Dazu versuche ich mit xcb_configure_window_checked das root Window entsprechen zu konfigurieren. Leider schlägt dies fehl. Bei einem selbst erstellten Window funktioniert es hingegen bestens.
Hier eine Minimalbeispiel:
#include <iostream> #include <xcb/xcb.h> int main(int argc, char *argv[]) { int screen_num = 0; xcb_connection_t *con = xcb_connect(NULL, &screen_num); xcb_screen_t* scr = NULL; for(xcb_screen_iterator_t iter = xcb_setup_roots_iterator(xcb_get_setup(con)); iter.rem; screen_num--, xcb_screen_next(&iter)) if(screen_num == 0) scr = iter.data; xcb_window_t root_win = scr->root; uint32_t mask = XCB_CW_EVENT_MASK; uint32_t values[1] = { XCB_EVENT_MASK_EXPOSURE }; xcb_void_cookie_t cookie = xcb_configure_window_checked(con, root_win, mask, values); xcb_generic_error_t *error = xcb_request_check(con, cookie); if(error) std::cerr << "Could not configure root window." << std::endl; return 0; }
Kann mir jemand sagen, was ich falsch mache?
-
Nimm
xcb_change_window_attributes_checked
anstattxcb_configure_window_checked
.Sonst keine XCB User hier?!