[gtk/wayland-dnd-fixes: 1/3] wayland: Clean up drags
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/wayland-dnd-fixes: 1/3] wayland: Clean up drags
- Date: Sat, 4 Jan 2020 14:45:02 +0000 (UTC)
commit ea8e80530ed5dbe3b679ecce3378d0e05e9a5d3f
Author: Matthias Clasen <mclasen redhat com>
Date: Sat Jan 4 00:12:57 2020 -0500
wayland: Clean up drags
We need to set the drag to NULL in gdk_wayland_drag_drop_done,
otherwise, all future drags will be considered local after the
first local one. Worse, they will also provide the wrong data.
gdk/wayland/gdkdrag-wayland.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
---
diff --git a/gdk/wayland/gdkdrag-wayland.c b/gdk/wayland/gdkdrag-wayland.c
index cf7e48a251..9226fae10a 100644
--- a/gdk/wayland/gdkdrag-wayland.c
+++ b/gdk/wayland/gdkdrag-wayland.c
@@ -173,7 +173,7 @@ gdk_wayland_drag_drop_done (GdkDrag *drag,
GdkWaylandDrag *drag_wayland = GDK_WAYLAND_DRAG (drag);
GdkDevice *device = gdk_drag_get_device (drag);
- gdk_wayland_seat_set_drag (gdk_device_get_seat (device), drag);
+ gdk_wayland_seat_set_drag (gdk_device_get_seat (device), NULL);
if (success)
{
@@ -402,6 +402,7 @@ _gdk_wayland_surface_drag_begin (GdkSurface *surface,
gdk_to_wl_actions (actions));
}
+g_print ("drag begin\n");
gdk_wayland_seat_set_drag (seat, drag);
wl_data_device_start_drag (gdk_wayland_device_get_data_device (device),
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]