From 25dc32c1a1bb9d0786e0a636659c4c2c5c8d0d0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Fri, 1 Dec 2017 16:03:34 +0800 Subject: [PATCH] wayland: Destroy the xdg_imported after the wl_surface This way the window manager can handle destruction while having the transient-for relationship still valid. https://bugzilla.gnome.org/show_bug.cgi?id=791062 --- gdk/wayland/gdkwindow-wayland.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gdk/wayland/gdkwindow-wayland.c b/gdk/wayland/gdkwindow-wayland.c index 0429ee5f54..9ee4fe2be4 100644 --- a/gdk/wayland/gdkwindow-wayland.c +++ b/gdk/wayland/gdkwindow-wayland.c @@ -2516,8 +2516,6 @@ gdk_wayland_window_hide_surface (GdkWindow *window) GdkWaylandDisplay *display_wayland = GDK_WAYLAND_DISPLAY (gdk_window_get_display (window)); GdkWindowImplWayland *impl = GDK_WINDOW_IMPL_WAYLAND (window->impl); - unset_transient_for_exported (window); - unmap_popups_for_window (window); if (impl->display_server.wl_surface) @@ -2599,6 +2597,8 @@ gdk_wayland_window_hide_surface (GdkWindow *window) g_list_remove (display_wayland->orphan_dialogs, window); } + unset_transient_for_exported (window); + _gdk_wayland_window_clear_saved_size (window); impl->pending_commit = FALSE; impl->mapped = FALSE;