どうやら、次のことを行う必要があります。
- 古い Linux には含まれていないため、xcb/util-cursorをダウンロードしてビルドします。
- それを使用してカーソルをロードします(「テーマカーソル」と呼ばれます)
- カーソル名は標準化されていないため、多数のカーソル名を試してみてください。
「ハンド」カーソルをロードするためのコード ( ref ):
xcb_cursor_context_t *ctx;
if (xcb_cursor_context_new(connection, defaultScreen, &ctx) >= 0) {
xcb_cursor_t cursor = xcb_cursor_load_cursor(ctx, "pointing_hand");
if (cursor == XCB_CURSOR_NONE) // they come with various names ...
cursor = xcb_cursor_load_cursor(ctx, "hand2");
if (cursor == XCB_CURSOR_NONE)
cursor = xcb_cursor_load_cursor(ctx, "hand");
if (cursor == XCB_CURSOR_NONE)
cursor = xcb_cursor_load_cursor(ctx, "hand1");
if (cursor == XCB_CURSOR_NONE)
cursor = xcb_cursor_load_cursor(ctx, "pointer");
if (cursor == XCB_CURSOR_NONE)
cursor = xcb_cursor_load_cursor(ctx, "e29285e634086352946a0e7090d73106");
if (cursor == XCB_CURSOR_NONE)
cursor = xcb_cursor_load_cursor(ctx, "9d800788f1b08800ae810202380a0822");
if (cursor != XCB_CURSOR_NONE) {
xcb_change_window_attributes(connection, window, XCB_CW_CURSOR, &cursor);
}
xcb_cursor_context_free(ctx);
}