gdk/x11: Ensure to hide DnD surface after failed operation
authorCarlos Garnacho <carlosg@gnome.org>
Mon, 13 Jan 2020 23:03:29 +0000 (00:03 +0100)
committerCarlos Garnacho <carlosg@gnome.org>
Thu, 16 Jan 2020 12:34:08 +0000 (13:34 +0100)
The drag source might be cached and held alive, only disposed after
future drag begin operations. Ensure the drag surface gets hidden
properly or might might stay transparent but mapped till then.

gdk/x11/gdkdrag-x11.c

index 4bf609a1de7b0c16096d101b9c8c7e88bc941d46..b525186f85191e450c947b15c2e4348da3fd765d 100644 (file)
@@ -1818,6 +1818,7 @@ struct _GdkDragAnim {
 static void
 gdk_drag_anim_destroy (GdkDragAnim *anim)
 {
+  gdk_surface_hide (anim->drag->drag_surface);
   g_object_unref (anim->drag);
   g_slice_free (GdkDragAnim, anim);
 }