diff --git a/wayland_server.cpp b/wayland_server.cpp index 2d19525195..05a470f5ae 100644 --- a/wayland_server.cpp +++ b/wayland_server.cpp @@ -121,7 +121,15 @@ void WaylandServer::init(const QByteArray &socketName) } else { m_clients << client; } - emit shellClientAdded(client); + if (client->readyForPainting()) { + emit shellClientAdded(client); + } else { + connect(client, &ShellClient::windowShown, this, + [this, client] { + emit shellClientAdded(client); + } + ); + } } ); m_display->createShm();