From 92e5df270014e98d3208e15ef6c85a868a5d5b17 Mon Sep 17 00:00:00 2001 From: gg Date: Mon, 19 Jan 2026 15:53:29 -0500 Subject: [PATCH] wip --- src/MainWindow.cpp | 2 +- src/libwalletqt/Wallet.cpp | 15 ++++++++------- src/libwalletqt/Wallet.h | 2 +- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp index 77c96f57..3142dce9 100644 --- a/src/MainWindow.cpp +++ b/src/MainWindow.cpp @@ -615,7 +615,7 @@ void MainWindow::initOffline() { } // Trigger the refresh (sets m_refreshNow = true, bypassing the pause check) - m_wallet->startRefresh(); + m_wallet->startRefresh(true); }); diff --git a/src/libwalletqt/Wallet.cpp b/src/libwalletqt/Wallet.cpp index 64f6057d..b479fd74 100644 --- a/src/libwalletqt/Wallet.cpp +++ b/src/libwalletqt/Wallet.cpp @@ -482,10 +482,12 @@ void Wallet::initAsync(const QString &daemonAddress, bool trustedDaemon, quint64 // #################### Synchronization (Refresh) #################### -void Wallet::startRefresh() { +void Wallet::startRefresh(bool force) { startRefreshThread(); m_refreshEnabled = true; - m_refreshNow = true; + if (force || !m_syncPaused) { + m_refreshNow = true; + } } void Wallet::pauseRefresh() { @@ -697,9 +699,8 @@ void Wallet::setSyncPaused(bool paused) { if (paused) { pauseRefresh(); } else { - m_refreshNow = true; m_wallet2->set_offline(false); - startRefresh(); + startRefresh(true); } } @@ -727,7 +728,7 @@ void Wallet::skipToTip() { m_lastSyncTime = QDateTime::currentDateTime(); setConnectionStatus(ConnectionStatus_Synchronized); - startRefresh(); + startRefresh(true); emit syncStatus(target, target, true); } @@ -753,7 +754,7 @@ void Wallet::syncDateRange(const QDate &start, const QDate &end) { m_wallet2->set_refresh_from_block_height(startHeight); } setConnectionStatus(ConnectionStatus_Synchronizing); - startRefresh(); + startRefresh(true); } @@ -784,7 +785,7 @@ void Wallet::fullSync() { } // Trigger rescan setConnectionStatus(ConnectionStatus_Synchronizing); - startRefresh(); + startRefresh(true); qInfo() << "Full Sync triggered. Rescanning from original restore height:" << originalHeight; } diff --git a/src/libwalletqt/Wallet.h b/src/libwalletqt/Wallet.h index 577d0620..4da2a85f 100644 --- a/src/libwalletqt/Wallet.h +++ b/src/libwalletqt/Wallet.h @@ -221,7 +221,7 @@ public: const QString &proxyAddress = ""); // ##### Synchronization (Refresh) ##### - void startRefresh(); + void startRefresh(bool force = false); void pauseRefresh(); Q_INVOKABLE void updateNetworkStatus(); -- 2.52.0