From 28b662d5e15f50133140820a49fb66f85dd5df96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kyle=20=F0=9F=90=86?= Date: Sun, 19 Oct 2025 10:38:15 -0400 Subject: [PATCH] fix: refresh chart axes and tooltips on hide toggle --- .../sparrowwallet/sparrow/control/BalanceChart.java | 11 +++++++++++ .../com/sparrowwallet/sparrow/control/UtxosChart.java | 6 ++++++ .../sparrow/wallet/TransactionsController.java | 1 + .../sparrowwallet/sparrow/wallet/UtxosController.java | 1 + 4 files changed, 19 insertions(+) diff --git a/src/main/java/com/sparrowwallet/sparrow/control/BalanceChart.java b/src/main/java/com/sparrowwallet/sparrow/control/BalanceChart.java index c76c23fa..08abf029 100644 --- a/src/main/java/com/sparrowwallet/sparrow/control/BalanceChart.java +++ b/src/main/java/com/sparrowwallet/sparrow/control/BalanceChart.java @@ -128,4 +128,15 @@ public class BalanceChart extends LineChart { NumberAxis yaxis = (NumberAxis)getYAxis(); yaxis.setTickLabelFormatter(new CoinAxisFormatter(yaxis, format, unit)); } + + public void refreshAxisLabels() { + NumberAxis yaxis = (NumberAxis)getYAxis(); + // Force the axis to redraw by invalidating the upper and lower bounds + yaxis.setAutoRanging(false); + double lower = yaxis.getLowerBound(); + double upper = yaxis.getUpperBound(); + yaxis.setLowerBound(lower); + yaxis.setUpperBound(upper); + yaxis.setAutoRanging(true); + } } diff --git a/src/main/java/com/sparrowwallet/sparrow/control/UtxosChart.java b/src/main/java/com/sparrowwallet/sparrow/control/UtxosChart.java index 5ced6687..277c8e70 100644 --- a/src/main/java/com/sparrowwallet/sparrow/control/UtxosChart.java +++ b/src/main/java/com/sparrowwallet/sparrow/control/UtxosChart.java @@ -144,4 +144,10 @@ public class UtxosChart extends BarChart { yaxis.setUpperBound(upper); yaxis.setAutoRanging(true); } + + public void refreshTooltips() { + for(XYChart.Data data : utxoSeries.getData()) { + installTooltip(data); + } + } } diff --git a/src/main/java/com/sparrowwallet/sparrow/wallet/TransactionsController.java b/src/main/java/com/sparrowwallet/sparrow/wallet/TransactionsController.java index 0111920d..a3942765 100644 --- a/src/main/java/com/sparrowwallet/sparrow/wallet/TransactionsController.java +++ b/src/main/java/com/sparrowwallet/sparrow/wallet/TransactionsController.java @@ -198,6 +198,7 @@ public class TransactionsController extends WalletFormController implements Init @Subscribe public void hideAmountsStatusChanged(HideAmountsStatusEvent event) { transactionsTable.refresh(); + balanceChart.refreshAxisLabels(); balance.refresh(); mempoolBalance.refresh(); fiatBalance.refresh(); diff --git a/src/main/java/com/sparrowwallet/sparrow/wallet/UtxosController.java b/src/main/java/com/sparrowwallet/sparrow/wallet/UtxosController.java index ede0a590..21ca752e 100644 --- a/src/main/java/com/sparrowwallet/sparrow/wallet/UtxosController.java +++ b/src/main/java/com/sparrowwallet/sparrow/wallet/UtxosController.java @@ -279,6 +279,7 @@ public class UtxosController extends WalletFormController implements Initializab utxosTable.refresh(); utxosChart.update(getWalletForm().getWalletUtxosEntry()); utxosChart.refreshAxisLabels(); + utxosChart.refreshTooltips(); balance.refresh(); mempoolBalance.refresh(); updateButtons(Config.get().getUnitFormat(), Config.get().getBitcoinUnit());