diff options
author | Nikita Krupenko <krnekit@gmail.com> | 2016-05-08 18:46:48 +0300 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2016-05-09 07:05:05 +0000 |
commit | a57c31e5ed5a4b4649084aa528ed75f25d0881e1 (patch) | |
tree | 96192721e473883d8e8bbbb52f7255c98b59db16 /tests | |
parent | d4bce2256ca275068675b8b8d07d07a88118d4e5 (diff) |
Fix overlay stacking order for multiple modal popups
This needed when using multiple drawers in application.
Task-number: QTBUG-53066
Change-Id: I81dbaeb2b974dc18a66bac2cee6b07516eb97a23
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/controls/data/tst_popup.qml | 48 |
1 files changed, 43 insertions, 5 deletions
diff --git a/tests/auto/controls/data/tst_popup.qml b/tests/auto/controls/data/tst_popup.qml index 8ccac816..6953ebbf 100644 --- a/tests/auto/controls/data/tst_popup.qml +++ b/tests/auto/controls/data/tst_popup.qml @@ -869,14 +869,24 @@ TestCase { Component { id: overlayTest ApplicationWindow { - property alias drawer: drawer + property alias firstDrawer: firstDrawer + property alias secondDrawer: secondDrawer + property alias upperDrawer: upperDrawer property alias modalPopup: modalPopup property alias modelessPopup: modelessPopup property alias plainPopup: plainPopup visible: true Drawer { + z: 5 + id: upperDrawer + } + Drawer { + z: 1 + id: firstDrawer + } + Drawer { z: 1 - id: drawer + id: secondDrawer } Popup { id: modalPopup @@ -908,14 +918,28 @@ TestCase { compare(window.overlay.modal.opacity, 0.0) compare(window.overlay.modeless.opacity, 0.0) - window.drawer.open() + window.firstDrawer.open() + compare(window.overlay.modal.z, 1.0) + tryCompare(window.overlay.modal, "opacity", 1.0) + window.firstDrawer.close() + tryCompare(window.overlay.modal, "opacity", 0.0) + + window.secondDrawer.open() + compare(window.overlay.modal.z, 1.0) + tryCompare(window.overlay.modal, "opacity", 1.0) + window.secondDrawer.close() + tryCompare(window.overlay.modal, "opacity", 0.0) + + window.firstDrawer.open() + window.secondDrawer.open() compare(window.overlay.modal.z, 1.0) tryCompare(window.overlay.modal, "opacity", 1.0) - window.drawer.close() + window.firstDrawer.close() + window.secondDrawer.close() tryCompare(window.overlay.modal, "opacity", 0.0) window.modalPopup.open() - compare(window.overlay.modal.z, 2.0) + compare(window.overlay.modal.z, 1.0) compare(window.modalPopup.visible, true) tryCompare(window.overlay.modal, "opacity", 1.0) @@ -947,6 +971,20 @@ TestCase { compare(window.overlay.modal.opacity, 0.0) compare(window.overlay.modeless.opacity, 0.0) + window.upperDrawer.open() + compare(window.overlay.modal.z, 1.0) + tryCompare(window.overlay.modal, "opacity", 1.0) + window.upperDrawer.close() + tryCompare(window.overlay.modal, "opacity", 0.0) + + window.firstDrawer.open() + window.upperDrawer.open() + compare(window.overlay.modal.z, 1.0) + tryCompare(window.overlay.modal, "opacity", 1.0) + window.firstDrawer.close() + window.upperDrawer.close() + tryCompare(window.overlay.modal, "opacity", 0.0) + window.destroy() } |