Set the root window cursor. Fixes #442.
This commit is contained in:
parent
20c68b1869
commit
7a18dcc89e
15
src/main.c
15
src/main.c
|
@ -331,6 +331,21 @@ int main(int argc, char *argv[]) {
|
||||||
/*init_xkb();*/
|
/*init_xkb();*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Set a cursor for the root window (otherwise the root window will show no
|
||||||
|
cursor until the first client is launched). */
|
||||||
|
if (xcursor_supported) {
|
||||||
|
uint32_t values[1] = { xcursor_get_cursor(XCURSOR_CURSOR_POINTER) };
|
||||||
|
xcb_change_window_attributes(conn, root, XCB_CW_CURSOR, values);
|
||||||
|
} else {
|
||||||
|
xcb_cursor_t cursor_id = xcb_generate_id(conn);
|
||||||
|
i3Font cursor_font = load_font("cursor", false);
|
||||||
|
int xcb_cursor = xcursor_get_xcb_cursor(XCURSOR_CURSOR_POINTER);
|
||||||
|
xcb_create_glyph_cursor(conn, cursor_id, cursor_font.id, cursor_font.id,
|
||||||
|
xcb_cursor, xcb_cursor + 1, 0, 0, 0, 65535, 65535, 65535);
|
||||||
|
xcb_change_window_attributes(conn, root, XCB_CW_CURSOR, &cursor_id);
|
||||||
|
xcb_free_cursor(conn, cursor_id);
|
||||||
|
}
|
||||||
|
|
||||||
if (xkb_supported) {
|
if (xkb_supported) {
|
||||||
int errBase,
|
int errBase,
|
||||||
major = XkbMajorVersion,
|
major = XkbMajorVersion,
|
||||||
|
|
Loading…
Reference in New Issue