diff options
| author | luigi1111 <luigi1111w@gmail.com> | 2019-06-05 22:30:46 -0500 |
|---|---|---|
| committer | luigi1111 <luigi1111w@gmail.com> | 2019-06-05 22:30:46 -0500 |
| commit | da39be9a8dbba668827a136c4f86ed09a19dd02a (patch) | |
| tree | a2d4d98ae9decd917025cee8ea1fcbd6f873b14a | |
| parent | 1c3201b17f5224d393cb818570cce123140de5e5 (diff) | |
| parent | 8bc9fbecaf34d6322bbae83d7ff5588072d639d1 (diff) | |
| download | monzero-gui-da39be9a8dbba668827a136c4f86ed09a19dd02a.tar.gz monzero-gui-da39be9a8dbba668827a136c4f86ed09a19dd02a.tar.xz monzero-gui-da39be9a8dbba668827a136c4f86ed09a19dd02a.zip | |
Merge pull request #2178
8bc9fbe WalletManager: async setDaemonAddress (xiphon)
| -rw-r--r-- | main.qml | 6 | ||||
| -rw-r--r-- | src/libwalletqt/WalletManager.cpp | 6 | ||||
| -rw-r--r-- | src/libwalletqt/WalletManager.h | 2 |
3 files changed, 8 insertions, 6 deletions
@@ -253,7 +253,7 @@ ApplicationWindow { } // Local daemon settings - walletManager.setDaemonAddress(localDaemonAddress) + walletManager.setDaemonAddressAsync(localDaemonAddress); // enable timers userInActivityTimer.running = true; @@ -605,7 +605,7 @@ ApplicationWindow { persistentSettings.useRemoteNode = true; currentDaemonAddress = persistentSettings.remoteNodeAddress; currentWallet.initAsync(currentDaemonAddress); - walletManager.setDaemonAddress(currentDaemonAddress); + walletManager.setDaemonAddressAsync(currentDaemonAddress); remoteNodeConnected = true; } @@ -617,7 +617,7 @@ ApplicationWindow { persistentSettings.useRemoteNode = false; currentDaemonAddress = localDaemonAddress currentWallet.initAsync(currentDaemonAddress); - walletManager.setDaemonAddress(currentDaemonAddress); + walletManager.setDaemonAddressAsync(currentDaemonAddress); remoteNodeConnected = false; } diff --git a/src/libwalletqt/WalletManager.cpp b/src/libwalletqt/WalletManager.cpp index 141ae97a..f51ab1fa 100644 --- a/src/libwalletqt/WalletManager.cpp +++ b/src/libwalletqt/WalletManager.cpp @@ -344,9 +344,11 @@ QString WalletManager::paymentIdFromAddress(const QString &address, NetworkType: return QString::fromStdString(Monero::Wallet::paymentIdFromAddress(address.toStdString(), static_cast<Monero::NetworkType>(nettype))); } -void WalletManager::setDaemonAddress(const QString &address) +void WalletManager::setDaemonAddressAsync(const QString &address) { - m_pimpl->setDaemonAddress(address.toStdString()); + QtConcurrent::run([this, address] { + m_pimpl->setDaemonAddress(address.toStdString()); + }); } bool WalletManager::connected() const diff --git a/src/libwalletqt/WalletManager.h b/src/libwalletqt/WalletManager.h index c81fef1c..c1bd2b5f 100644 --- a/src/libwalletqt/WalletManager.h +++ b/src/libwalletqt/WalletManager.h @@ -150,7 +150,7 @@ public: Q_INVOKABLE QString paymentIdFromAddress(const QString &address, NetworkType::Type nettype) const; - Q_INVOKABLE void setDaemonAddress(const QString &address); + Q_INVOKABLE void setDaemonAddressAsync(const QString &address); Q_INVOKABLE bool connected() const; Q_INVOKABLE quint64 networkDifficulty() const; Q_INVOKABLE quint64 blockchainHeight() const; |
