aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/controls/data/tst_popup.qml
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2016-07-21 13:36:47 +0200
committerJ-P Nurmi <jpnurmi@qt.io>2016-07-22 12:14:32 +0000
commit79cb8dcfcd9c1491cd0fa0699a0918e29183f6c7 (patch)
tree02248ad6d37c3dec52b611f56bfe4a042e4c3c86 /tests/auto/controls/data/tst_popup.qml
parent8231b5b0eb4afa385392fbe0259f9fecdb459907 (diff)
Popups: fix overlay visibility
Make sure popup overlay dimmers gets destroyed when popups are closed, and thus, re-parented out of the window overlay. The window overlay item is hidden when there are no child items, so this fixes the issue that the window overlay item was left visible after closing popups. Change-Id: Id2ffe43b706ffcc5cda83abd75354ef04f893745 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Diffstat (limited to 'tests/auto/controls/data/tst_popup.qml')
-rw-r--r--tests/auto/controls/data/tst_popup.qml11
1 files changed, 7 insertions, 4 deletions
diff --git a/tests/auto/controls/data/tst_popup.qml b/tests/auto/controls/data/tst_popup.qml
index 50933c20..ecdd1bf2 100644
--- a/tests/auto/controls/data/tst_popup.qml
+++ b/tests/auto/controls/data/tst_popup.qml
@@ -1033,7 +1033,9 @@ TestCase {
window.requestActivate()
tryCompare(window, "active", true)
- compare(window.overlay.children.length, 6) // 3 drawers + 3 overlays
+
+ var countBefore = window.overlay.children.length
+ compare(countBefore, 6) // 3 drawers + 3 overlays
var firstOverlay = findOverlay(window, window.firstDrawer)
verify(firstOverlay)
@@ -1087,6 +1089,7 @@ TestCase {
compare(modalOverlay.z, window.modalPopup.z)
compare(window.modalPopup.visible, true)
tryCompare(modalOverlay, "opacity", 1.0)
+ compare(window.overlay.children.length, countBefore + 2) // 1 popup + 1 overlay
var modelessOverlay = findOverlay(window, window.modelessPopup)
verify(!modelessOverlay)
@@ -1096,23 +1099,23 @@ TestCase {
compare(modelessOverlay.z, window.modelessPopup.z)
compare(window.modelessPopup.visible, true)
tryCompare(modelessOverlay, "opacity", 1.0)
+ compare(window.overlay.children.length, countBefore + 4) // 2 popups + 2 overlays
window.modelessPopup.close()
- tryCompare(modelessOverlay, "opacity", 0.0)
tryCompare(window.modelessPopup, "visible", false)
modelessOverlay = findOverlay(window, window.modelessPopup)
verify(!modelessOverlay)
+ compare(window.overlay.children.length, countBefore + 2) // 1 popup + 1 overlay
compare(window.modalPopup.visible, true)
compare(modalOverlay.opacity, 1.0)
window.modalPopup.close()
- tryCompare(modalOverlay, "opacity", 0.0)
tryCompare(window.modalPopup, "visible", false)
modalOverlay = findOverlay(window, window.modalPopup)
verify(!modalOverlay)
+ compare(window.overlay.children.length, countBefore)
- var countBefore = window.overlay.children.length
window.plainPopup.open()
tryCompare(window.plainPopup, "visible", true)
compare(window.overlay.children.length, countBefore + 1) // only popup added, no overlays involved