diff --git a/src/backend/wayland/wl_backend.c b/src/backend/wayland/wl_backend.c index 1470785..820a2ce 100644 --- a/src/backend/wayland/wl_backend.c +++ b/src/backend/wayland/wl_backend.c @@ -6524,7 +6524,22 @@ wl_pointer_query_full(WNativeWindow root, static void wl_pointer_change_grab(unsigned int event_mask, int cursor_id, unsigned long timestamp) -{ (void)event_mask; (void)cursor_id; (void)timestamp; } +{ + (void)event_mask; (void)timestamp; + /* Map WCUR_* cursor IDs to xcursor names */ + const char *name; + switch (cursor_id) { + case WCUR_MOVE: name = "fleur"; break; + case WCUR_TOPLEFTRESIZE: name = "nw-resize"; break; + case WCUR_TOPRIGHTRESIZE: name = "ne-resize"; break; + case WCUR_BOTTOMLEFTRESIZE: name = "sw-resize"; break; + case WCUR_BOTTOMRIGHTRESIZE: name = "se-resize"; break; + case WCUR_VERTICALRESIZE: name = "n-resize"; break; + case WCUR_HORIZONRESIZE: name = "e-resize"; break; + default: name = "left_ptr"; break; + } + wl_set_cursor_image(name); +} /* ------------------------------------------------------------------ */ /* Keyboard grabs */