diff options
Diffstat (limited to 'src/quicktemplates2/qquickpopup.cpp')
-rw-r--r-- | src/quicktemplates2/qquickpopup.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/quicktemplates2/qquickpopup.cpp b/src/quicktemplates2/qquickpopup.cpp index 4dd07b07..9b541803 100644 --- a/src/quicktemplates2/qquickpopup.cpp +++ b/src/quicktemplates2/qquickpopup.cpp @@ -427,6 +427,9 @@ void QQuickPopupPrivate::setWindow(QQuickWindow *newWindow) window = newWindow; emit q->windowChanged(newWindow); + + if (complete && visible && window) + transitionManager.transitionEnter(); } void QQuickPopupPrivate::itemDestroyed(QQuickItem *item) @@ -1729,15 +1732,17 @@ void QQuickPopup::classBegin() void QQuickPopup::componentComplete() { Q_D(QQuickPopup); - d->complete = true; if (!parentItem()) { if (QQuickItem *item = qobject_cast<QQuickItem *>(parent())) setParentItem(item); else if (QQuickWindow *window = qobject_cast<QQuickWindow *>(parent())) setParentItem(window->contentItem()); } - if (d->visible) + + if (d->visible && d->window) d->transitionManager.transitionEnter(); + + d->complete = true; d->popupItem->componentComplete(); } |