aboutsummaryrefslogtreecommitdiff
path: root/main.qml
diff options
context:
space:
mode:
Diffstat (limited to 'main.qml')
-rw-r--r--main.qml46
1 files changed, 25 insertions, 21 deletions
diff --git a/main.qml b/main.qml
index 743af497..c6300b52 100644
--- a/main.qml
+++ b/main.qml
@@ -283,7 +283,7 @@ ApplicationWindow {
titleBar.visible = persistentSettings.customDecorations;
}
- function closeWallet() {
+ function closeWallet(callback) {
// Disconnect all listeners
if (typeof currentWallet !== "undefined" && currentWallet !== null) {
@@ -306,8 +306,17 @@ ApplicationWindow {
}
currentWallet = undefined;
- walletManager.closeWallet();
+ appWindow.showProcessingSplash(qsTr("Closing wallet..."));
+ if (callback) {
+ walletManager.closeWalletAsync(function() {
+ hideProcessingSplash();
+ callback();
+ });
+ } else {
+ walletManager.closeWallet();
+ hideProcessingSplash();
+ }
}
function connectWallet(wallet) {
@@ -558,11 +567,6 @@ ApplicationWindow {
}
}
- function onWalletClosed(walletAddress) {
- hideProcessingSplash();
- console.log(">>> wallet closed: " + walletAddress)
- }
-
function onWalletPassphraseNeeded(){
if(rootItem.state !== "normal") return;
@@ -1115,17 +1119,18 @@ ApplicationWindow {
function showWizard(){
clearMoneroCardLabelText();
walletInitialized = false;
- closeWallet();
- currentWallet = undefined;
- wizard.restart();
- wizard.wizardState = "wizardHome";
- rootItem.state = "wizard"
- // reset balance
- leftPanel.balanceText = leftPanel.unlockedBalanceText = walletManager.displayAmount(0);
- fiatApiUpdateBalance(0, 0);
- // disable timers
- userInActivityTimer.running = false;
- simpleModeConnectionTimer.running = false;
+ closeWallet(function() {
+ currentWallet = undefined;
+ wizard.restart();
+ wizard.wizardState = "wizardHome";
+ rootItem.state = "wizard"
+ // reset balance
+ leftPanel.balanceText = leftPanel.unlockedBalanceText = walletManager.displayAmount(0);
+ fiatApiUpdateBalance(0, 0);
+ // disable timers
+ userInActivityTimer.running = false;
+ simpleModeConnectionTimer.running = false;
+ });
}
function hideMenu() {
@@ -1289,7 +1294,6 @@ ApplicationWindow {
y = (Screen.height - maxWindowHeight) / 2
//
walletManager.walletOpened.connect(onWalletOpened);
- walletManager.walletClosed.connect(onWalletClosed);
walletManager.deviceButtonRequest.connect(onDeviceButtonRequest);
walletManager.deviceButtonPressed.connect(onDeviceButtonPressed);
walletManager.checkUpdatesComplete.connect(onWalletCheckUpdatesComplete);
@@ -2131,8 +2135,8 @@ ApplicationWindow {
console.log("close accepted");
// Close wallet non async on exit
daemonManager.exit();
- walletManager.closeWallet();
- Qt.quit();
+
+ closeWallet(Qt.quit);
}
function onWalletCheckUpdatesComplete(update) {