}
// Trigger the refresh (sets m_refreshNow = true, bypassing the pause check)
- m_wallet->startRefresh();
+ m_wallet->startRefresh(true);
});
// #################### 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() {
if (paused) {
pauseRefresh();
} else {
- m_refreshNow = true;
m_wallet2->set_offline(false);
- startRefresh();
+ startRefresh(true);
}
}
m_lastSyncTime = QDateTime::currentDateTime();
setConnectionStatus(ConnectionStatus_Synchronized);
- startRefresh();
+ startRefresh(true);
emit syncStatus(target, target, true);
}
m_wallet2->set_refresh_from_block_height(startHeight);
}
setConnectionStatus(ConnectionStatus_Synchronizing);
- startRefresh();
+ startRefresh(true);
}
}
// Trigger rescan
setConnectionStatus(ConnectionStatus_Synchronizing);
- startRefresh();
+ startRefresh(true);
qInfo() << "Full Sync triggered. Rescanning from original restore height:" << originalHeight;
}
const QString &proxyAddress = "");
// ##### Synchronization (Refresh) #####
- void startRefresh();
+ void startRefresh(bool force = false);
void pauseRefresh();
Q_INVOKABLE void updateNetworkStatus();