From d7442a31ffa464a5158bd4467941494e99098c56 Mon Sep 17 00:00:00 2001
From: Johan Klokkhammer Helsing <johan.helsing@qt.io>
Date: Mon, 7 Nov 2016 13:26:04 +0100
Subject: [PATCH] Don't create new xdg surfaces in updateTransientParent

Change-Id: I1644a75269fec40644f02eeb275d9e6b98995c0e
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
---
 src/client/qwaylandxdgsurface.cpp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/client/qwaylandxdgsurface.cpp b/src/client/qwaylandxdgsurface.cpp
index f44e2d9f..76456495 100644
--- a/src/client/qwaylandxdgsurface.cpp
+++ b/src/client/qwaylandxdgsurface.cpp
@@ -132,7 +132,9 @@ void QWaylandXdgSurface::updateTransientParent(QWindow *parent)
     QWaylandWindow *parent_wayland_window = static_cast<QWaylandWindow *>(parent->handle());
     if (!parent_wayland_window)
         return;
-    set_parent(m_shell->get_xdg_surface(parent_wayland_window->object()));
+    auto parentXdgSurface = qobject_cast<QWaylandXdgSurface *>(parent_wayland_window->shellSurface());
+    Q_ASSERT(parentXdgSurface);
+    set_parent(parentXdgSurface->object());
 }
 
 void QWaylandXdgSurface::setTitle(const QString & title)
-- 
GitLab