@@ -54,8 +54,14 @@ MirSurfaceItem::MirSurfaceItem(const QString& name,
5454 QQmlEngine::setObjectOwnership(this, QQmlEngine::CppOwnership);
5555
5656 // The assumptions I make here really should hold.
57− QQuickView *quickView =
58− qobject_cast<QQuickView*>(QGuiApplication::topLevelWindows()[0]);
57+ const QWindowList windows = QGuiApplication::topLevelWindows();
58+ QQuickView *quickView = nullptr;
59+ Q_FOREACH(QWindow *w, windows) {
60+ quickView = qobject_cast<QQuickView*>(w);
61+ if (quickView) {
62+ break;
63+ }
64+ }
5965
6066 QString qmlComponentFilePath;
6167 if (!qmlFilePath.isEmpty()) {