diff --git a/gdk/wayland/gdkdnd-wayland.c b/gdk/wayland/gdkdnd-wayland.c index c889e9ee40..195b86b76b 100644 --- a/gdk/wayland/gdkdnd-wayland.c +++ b/gdk/wayland/gdkdnd-wayland.c @@ -380,6 +380,7 @@ _gdk_wayland_surface_drag_begin (GdkSurface *surface, GdkDrag *drag; GdkSeat *seat; GdkWaylandDisplay *display_wayland; + GdkCursor *cursor; display_wayland = GDK_WAYLAND_DISPLAY (gdk_device_get_display (device)); seat = gdk_device_get_seat (device); @@ -411,6 +412,9 @@ _gdk_wayland_surface_drag_begin (GdkSurface *surface, drag_wayland->dnd_wl_surface, _gdk_wayland_display_get_serial (display_wayland)); + cursor = gdk_drag_get_cursor (drag, gdk_drag_get_selected_action (drag)); + gdk_drag_set_cursor (drag, cursor); + gdk_seat_ungrab (seat); return drag;