aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2016-08-09 22:28:05 +0200
committerJ-P Nurmi <jpnurmi@qt.io>2016-08-10 07:50:54 +0000
commit3553f1dc9fb0f43564bddfe453a1d7843c43cffd (patch)
treef44190e919c7ef24038ba6b1f78a6d5c55b36cb6 /src
parent6e8533b741f4fd527f17d17e7730489661ae91a5 (diff)
Fix popups to appear above QtQuick.Dialogs 1.x
When using a plain QML Window, the Z-value of the popup item must be higher than the Z-value of the DefaultWindowDecoration in QtQuick.Dialogs 1.x. When using an ApplicationWindow, the same applies to the window overlay. NOTE: The correct Z-value of DefaultWindowDecoration is 1000000, not 10000! (qtquickcontrols/src/dialogs/qml/DefaultWindowDecoration.qml) Task-number: QTBUG-55004 Change-Id: Ib5d068ee2c633884f95ba519f77b6ec082220461 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/quicktemplates2/qquickoverlay.cpp1
-rw-r--r--src/quicktemplates2/qquickpopup.cpp2
2 files changed, 2 insertions, 1 deletions
diff --git a/src/quicktemplates2/qquickoverlay.cpp b/src/quicktemplates2/qquickoverlay.cpp
index efbc2ce5..850de875 100644
--- a/src/quicktemplates2/qquickoverlay.cpp
+++ b/src/quicktemplates2/qquickoverlay.cpp
@@ -176,6 +176,7 @@ QQuickOverlayPrivate::QQuickOverlayPrivate() :
QQuickOverlay::QQuickOverlay(QQuickItem *parent)
: QQuickItem(*(new QQuickOverlayPrivate), parent)
{
+ setZ(1000001); // DefaultWindowDecoration+1
setAcceptedMouseButtons(Qt::AllButtons);
setFiltersChildMouseEvents(true);
setVisible(false);
diff --git a/src/quicktemplates2/qquickpopup.cpp b/src/quicktemplates2/qquickpopup.cpp
index ea45f5cd..57087c0a 100644
--- a/src/quicktemplates2/qquickpopup.cpp
+++ b/src/quicktemplates2/qquickpopup.cpp
@@ -192,7 +192,7 @@ void QQuickPopupPrivate::prepareEnterTransition(bool notify)
QQuickApplicationWindow *applicationWindow = qobject_cast<QQuickApplicationWindow*>(window);
if (!applicationWindow) {
window->installEventFilter(q);
- popupItem->setZ(10001); // DefaultWindowDecoration+1
+ popupItem->setZ(1000001); // DefaultWindowDecoration+1
popupItem->setParentItem(window->contentItem());
} else {
popupItem->setParentItem(applicationWindow->overlay());