From 7171f9d7f303eb58b87c2a519d82b7b40ee41405 Mon Sep 17 00:00:00 2001 From: gg Date: Wed, 14 Jan 2026 23:18:21 -0500 Subject: [PATCH] more statusbar refinements/configs --- src/MainWindow.cpp | 6 +++++- src/SettingsDialog.cpp | 5 +++-- src/utils/config.cpp | 2 +- src/widgets/TickerWidget.cpp | 5 ++++- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp index 3cd28325..4ea0a9a4 100644 --- a/src/MainWindow.cpp +++ b/src/MainWindow.cpp @@ -820,12 +820,16 @@ void MainWindow::onBalanceUpdated(quint64 balance, quint64 spendable) { QString fiatCurrency = conf()->get(Config::preferredFiatCurrency).toString(); double balanceFiatAmount = appData()->prices.convert("XMR", fiatCurrency, balance / constants::cdiv); bool isCacheValid = appData()->prices.lastUpdateTime.isValid(); + bool hasXmrPrice = appData()->prices.markets.contains("XMR"); + bool hasFiatRate = fiatCurrency == "USD" || appData()->prices.rates.contains(fiatCurrency); if (balance > 0 && (balanceFiatAmount == 0.0 || !isCacheValid)) { if (conf()->get(Config::offlineMode).toBool() || conf()->get(Config::disableWebsocket).toBool() || m_wallet->connectionStatus() == Wallet::ConnectionStatus_Disconnected) { suffixStr += " (offline)"; - } else { + } else if (!hasXmrPrice || !hasFiatRate) { suffixStr += " (connecting)"; + } else { + suffixStr += " (unknown)"; } } else { QString approx = !conf()->get(Config::disableWebsocket).toBool() ? "" : "~ "; diff --git a/src/SettingsDialog.cpp b/src/SettingsDialog.cpp index e47963b8..dd6bea50 100644 --- a/src/SettingsDialog.cpp +++ b/src/SettingsDialog.cpp @@ -242,9 +242,10 @@ void Settings::setupNetworkTab() { seconds = text.split(" ").first().toInt(&ok); if (!ok) return; } - if (seconds > 0) { - conf()->set(Config::syncInterval, seconds); + if (seconds < 30) { + seconds = 30; } + conf()->set(Config::syncInterval, seconds); }; connect(comboSyncInterval, &QComboBox::currentTextChanged, updateConfig); diff --git a/src/utils/config.cpp b/src/utils/config.cpp index c7b93b94..bfb5c421 100644 --- a/src/utils/config.cpp +++ b/src/utils/config.cpp @@ -81,7 +81,7 @@ static const QHash configStrings = { {Config::offlineMode, {QS("offlineMode"), false}}, {Config::syncPaused, {QS("syncPaused"), false}}, {Config::syncPausedAlsoDisconnectWebSocket, {QS("syncPausedAlsoDisconnectWebSocket"), false}}, - {Config::syncInterval, {QS("syncInterval"), 10}}, + {Config::syncInterval, {QS("syncInterval"), 30}}, {Config::lastKnownNetworkHeight, {QS("lastKnownNetworkHeight"), 0}}, {Config::lastSyncTimestamp, {QS("lastSyncTimestamp"), 0}}, {Config::lastPriceUpdateTimestamp, {QS("lastPriceUpdateTimestamp"), 0}}, diff --git a/src/widgets/TickerWidget.cpp b/src/widgets/TickerWidget.cpp index 8c727eb7..2276c1a4 100644 --- a/src/widgets/TickerWidget.cpp +++ b/src/widgets/TickerWidget.cpp @@ -78,10 +78,13 @@ void BalanceTickerWidget::updateDisplay() { bool isCacheValid = appData()->prices.lastUpdateTime.isValid(); bool isCacheFresh = isCacheValid && appData()->prices.lastUpdateTime.secsTo(QDateTime::currentDateTime()) < 3600; + bool hasXmrPrice = appData()->prices.markets.contains("XMR"); + bool hasFiatRate = fiatCurrency == "USD" || appData()->prices.rates.contains(fiatCurrency); + if (balanceFiatAmount == 0.0 || !isCacheValid) { if (conf()->get(Config::offlineMode).toBool() || conf()->get(Config::disableWebsocket).toBool() || m_wallet->connectionStatus() == Wallet::ConnectionStatus_Disconnected) { this->setDisplayText("offline"); - } else if (!appData()->prices.markets.contains("XMR")) { + } else if (!hasXmrPrice || !hasFiatRate) { this->setDisplayText("connecting"); } else { this->setDisplayText("unknown"); -- 2.52.0