From 8484398deec51f6e9205eabca5fdfa7e8939fa0c Mon Sep 17 00:00:00 2001 From: jmacxx <47253594+jmacxx@users.noreply.github.com> Date: Sun, 8 Nov 2020 08:19:56 -0600 Subject: [PATCH] Remove default fee rate from Bisq startup screen The display of fee rate on the startup screen is misleading because at startup a fee has not been received from the mempool fee service and instead the default value of 50 sats is shown. This change causes the fee rate not to be displayed until a response has been received from the service. Fixes #4765 --- core/src/main/java/bisq/core/app/WalletAppSetup.java | 9 ++++----- .../src/main/java/bisq/core/provider/fee/FeeService.java | 8 ++++++++ core/src/main/resources/i18n/displayStrings.properties | 4 ++-- 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/core/src/main/java/bisq/core/app/WalletAppSetup.java b/core/src/main/java/bisq/core/app/WalletAppSetup.java index c5d8b839f6f..83453cb6f67 100644 --- a/core/src/main/java/bisq/core/app/WalletAppSetup.java +++ b/core/src/main/java/bisq/core/app/WalletAppSetup.java @@ -117,24 +117,23 @@ void init(@Nullable Consumer chainFileLockedExceptionHandler, String result; if (exception == null) { double percentage = (double) downloadPercentage; - long fees = feeService.getTxFeePerByte().longValue(); btcSyncProgress.set(percentage); if (percentage == 1) { - String feeRate = Res.get("mainView.footer.btcFeeRate", fees); result = Res.get("mainView.footer.btcInfo", Res.get("mainView.footer.btcInfo.synchronizedWith"), - getBtcNetworkAsString() + " / " + feeRate); + getBtcNetworkAsString(), + feeService.getFeeTextForDisplay()); getBtcSplashSyncIconId().set("image-connection-synced"); downloadCompleteHandler.run(); } else if (percentage > 0.0) { result = Res.get("mainView.footer.btcInfo", Res.get("mainView.footer.btcInfo.synchronizingWith"), - getBtcNetworkAsString() + ": " + FormattingUtils.formatToPercentWithSymbol(percentage)); + getBtcNetworkAsString() + ": " + FormattingUtils.formatToPercentWithSymbol(percentage), ""); } else { result = Res.get("mainView.footer.btcInfo", Res.get("mainView.footer.btcInfo.connectingTo"), - getBtcNetworkAsString()); + getBtcNetworkAsString(), ""); } } else { result = Res.get("mainView.footer.btcInfo", diff --git a/core/src/main/java/bisq/core/provider/fee/FeeService.java b/core/src/main/java/bisq/core/provider/fee/FeeService.java index b43c4491b62..8d1521d5ad4 100644 --- a/core/src/main/java/bisq/core/provider/fee/FeeService.java +++ b/core/src/main/java/bisq/core/provider/fee/FeeService.java @@ -20,6 +20,7 @@ import bisq.core.dao.governance.param.Param; import bisq.core.dao.governance.period.PeriodService; import bisq.core.dao.state.DaoStateService; +import bisq.core.locale.Res; import bisq.common.UserThread; import bisq.common.config.Config; @@ -190,4 +191,11 @@ public Coin getTxFeePerByte() { public ReadOnlyIntegerProperty feeUpdateCounterProperty() { return feeUpdateCounter; } + + public String getFeeTextForDisplay() { + // only show the fee rate if it has been initialized from the service (see feeUpdateCounter) + if (feeUpdateCounter.get() > 0) + return Res.get("mainView.footer.btcFeeRate", txFeePerByte); + return ""; + } } diff --git a/core/src/main/resources/i18n/displayStrings.properties b/core/src/main/resources/i18n/displayStrings.properties index 6d011b5e76c..a68cd42224c 100644 --- a/core/src/main/resources/i18n/displayStrings.properties +++ b/core/src/main/resources/i18n/displayStrings.properties @@ -252,8 +252,8 @@ mainView.balance.locked.short=Locked mainView.footer.usingTor=(using Tor) mainView.footer.localhostBitcoinNode=(localhost) -mainView.footer.btcInfo={0} {1} -mainView.footer.btcFeeRate=Current fee rate: {0} sat/vB +mainView.footer.btcInfo={0} {1} {2} +mainView.footer.btcFeeRate=/ Current fee rate: {0} sat/vB mainView.footer.btcInfo.initializing=Connecting to Bitcoin network mainView.footer.bsqInfo.synchronizing=/ Synchronizing DAO mainView.footer.btcInfo.synchronizingWith=Synchronizing with