summaryrefslogtreecommitdiff
path: root/gdk/x11/gdkdnd-x11.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2017-08-26 18:01:17 -0400
committerMatthias Clasen <mclasen@redhat.com>2017-08-26 19:54:29 -0400
commit5722f25d5135d1ae75709f1abe9e010b6aa0777b (patch)
tree01067e74db0986197e9baa19af6f159e91673297 /gdk/x11/gdkdnd-x11.c
parent41f26ea7a65f4dd3001ebcd79b4a21825529d43b (diff)
downloadgtk+-5722f25d5135d1ae75709f1abe9e010b6aa0777b.tar.gz
x11: Fix initial drag cursors
Under X, we were not setting the right drag cursor initially, because at current_action == action == 0, initially. Fix this by explicitly using the right cursor when grabbing.
Diffstat (limited to 'gdk/x11/gdkdnd-x11.c')
-rw-r--r--gdk/x11/gdkdnd-x11.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gdk/x11/gdkdnd-x11.c b/gdk/x11/gdkdnd-x11.c
index 6841d0ad83..dd2d280ea2 100644
--- a/gdk/x11/gdkdnd-x11.c
+++ b/gdk/x11/gdkdnd-x11.c
@@ -2668,6 +2668,7 @@ drag_context_grab (GdkDragContext *context)
GdkWindow *root;
GdkSeat *seat;
gint keycode, i;
+ GdkCursor *cursor;
if (!x11_context->ipc_window)
return FALSE;
@@ -2682,6 +2683,9 @@ drag_context_grab (GdkDragContext *context)
#endif
capabilities = GDK_SEAT_CAPABILITY_ALL;
+ cursor = gdk_drag_get_cursor (context, x11_context->current_action);
+ g_set_object (&x11_context->cursor, cursor);
+
if (gdk_seat_grab (seat, x11_context->ipc_window,
capabilities, FALSE,
x11_context->cursor, NULL, NULL, NULL) != GDK_GRAB_SUCCESS)