diff options
author | J-P Nurmi <jpnurmi@qt.io> | 2017-01-24 09:53:28 +0100 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2017-01-24 10:13:01 +0000 |
commit | 1041a95eb07e5cd25d96eec9dfc2243144638183 (patch) | |
tree | d76492bb4171c98e81f52584cf51bf362445a980 /src | |
parent | 29c0ac9a950d063e627a077189b33aaf4810cf89 (diff) |
QQuickPopup: allow QQuickWindow as a parent
Previously it would unintuitively complain that "cannot find any window
to open popup in" if a window was passed as a parent.
Change-Id: I984d4c941afae12733a9c1c2f0441da867298aa1
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/quicktemplates2/qquickpopup.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/quicktemplates2/qquickpopup.cpp b/src/quicktemplates2/qquickpopup.cpp index 3f3caf58..4852d08d 100644 --- a/src/quicktemplates2/qquickpopup.cpp +++ b/src/quicktemplates2/qquickpopup.cpp @@ -2216,8 +2216,12 @@ void QQuickPopup::componentComplete() { Q_D(QQuickPopup); d->complete = true; - if (!parentItem()) - setParentItem(qobject_cast<QQuickItem *>(parent())); + 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) d->transitionManager.transitionEnter(); d->popupItem->componentComplete(); |