From bcd2c966a5f8a962fcde0dcafde884822ad6cd09 Mon Sep 17 00:00:00 2001 From: Craig Raw Date: Wed, 11 Nov 2020 14:48:10 +0200 Subject: [PATCH] add recursive lookup for tab header --- .../sparrow/wallet/SendController.java | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/sparrowwallet/sparrow/wallet/SendController.java b/src/main/java/com/sparrowwallet/sparrow/wallet/SendController.java index d58dfa85..ed67cea4 100644 --- a/src/main/java/com/sparrowwallet/sparrow/wallet/SendController.java +++ b/src/main/java/com/sparrowwallet/sparrow/wallet/SendController.java @@ -150,15 +150,7 @@ public class SendController extends WalletFormController implements Initializabl addValidation(); addPaymentTab(); - Platform.runLater(() -> { - StackPane stackPane = (StackPane)paymentTabs.lookup(".tab-header-area"); - if(stackPane != null) { - tabHeader = stackPane; - tabHeader.managedProperty().bind(tabHeader.visibleProperty()); - tabHeader.setVisible(false); - paymentTabs.getStyleClass().remove("initial"); - } - }); + initializeTabHeader(0); paymentTabs.getTabs().addListener((ListChangeListener) c -> { if(tabHeader != null) { @@ -279,6 +271,21 @@ public class SendController extends WalletFormController implements Initializabl }); } + private void initializeTabHeader(int count) { + final int lookupCount = count; + Platform.runLater(() -> { + StackPane stackPane = (StackPane)paymentTabs.lookup(".tab-header-area"); + if(stackPane != null) { + tabHeader = stackPane; + tabHeader.managedProperty().bind(tabHeader.visibleProperty()); + tabHeader.setVisible(false); + paymentTabs.getStyleClass().remove("initial"); + } else if(lookupCount < 20) { + initializeTabHeader(lookupCount+1); + } + }); + } + public BitcoinUnit getBitcoinUnit(BitcoinUnit bitcoinUnit) { BitcoinUnit unit = bitcoinUnit; if(unit == null || unit.equals(BitcoinUnit.AUTO)) {