From cabf8e0644ef273475a51cefe1354762eb97d544 Mon Sep 17 00:00:00 2001 From: Sander van Grieken Date: Mon, 26 Sep 2022 13:55:54 +0200 Subject: [PATCH] support stacking dialogs --- electrum/gui/qml/components/controls/ElDialog.qml | 4 ++-- electrum/gui/qml/components/main.qml | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/electrum/gui/qml/components/controls/ElDialog.qml b/electrum/gui/qml/components/controls/ElDialog.qml index e059b0a3d..459b1fb9c 100644 --- a/electrum/gui/qml/components/controls/ElDialog.qml +++ b/electrum/gui/qml/components/controls/ElDialog.qml @@ -9,9 +9,9 @@ Dialog { onOpenedChanged: { if (opened) { - app.activeDialog = abstractdialog + app.activeDialogs.push(abstractdialog) } else { - app.activeDialog = null + app.activeDialogs.pop() } } } diff --git a/electrum/gui/qml/components/main.qml b/electrum/gui/qml/components/main.qml index dd68ee69e..efaaa4261 100644 --- a/electrum/gui/qml/components/main.qml +++ b/electrum/gui/qml/components/main.qml @@ -27,7 +27,7 @@ ApplicationWindow property alias stack: mainStackView - property Dialog activeDialog: null + property variant activeDialogs: [] header: ToolBar { id: toolbar @@ -228,8 +228,9 @@ ApplicationWindow } onClosing: { - if (activeDialog) { + if (activeDialogs.length > 0) { console.log('dialog on top') + var activeDialog = activeDialogs.pop() if (activeDialog.allowClose) { activeDialog.close() }