diff --git a/src/main/java/com/sparrowwallet/sparrow/control/DeviceDialog.java b/src/main/java/com/sparrowwallet/sparrow/control/DeviceDialog.java index a0146f4b..e7c33a64 100644 --- a/src/main/java/com/sparrowwallet/sparrow/control/DeviceDialog.java +++ b/src/main/java/com/sparrowwallet/sparrow/control/DeviceDialog.java @@ -89,6 +89,8 @@ public abstract class DeviceDialog extends Dialog { dialogPane.setPrefWidth(500); dialogPane.setPrefHeight(360); + + setResultConverter(dialogButton -> dialogButton == cancelButtonType ? null : getResult()); } private void scan() { diff --git a/src/main/java/com/sparrowwallet/sparrow/control/DevicePane.java b/src/main/java/com/sparrowwallet/sparrow/control/DevicePane.java index 7a95080d..de824564 100644 --- a/src/main/java/com/sparrowwallet/sparrow/control/DevicePane.java +++ b/src/main/java/com/sparrowwallet/sparrow/control/DevicePane.java @@ -73,18 +73,7 @@ public class DevicePane extends TitledDescriptionPane { createSetPassphraseButton(); createImportButton(); - if(device.getError() != null) { - setError("Error", device.getError()); - Platform.runLater(() -> { - setExpanded(true); - }); - } else if(device.getNeedsPinSent() != null && device.getNeedsPinSent()) { - unlockButton.setVisible(true); - } else if(device.getNeedsPassphraseSent() != null && device.getNeedsPassphraseSent()) { - setPassphraseButton.setVisible(true); - } else { - showOperationButton(); - } + initialise(device); buttonBox.getChildren().addAll(setPassphraseButton, importButton); } @@ -104,13 +93,7 @@ public class DevicePane extends TitledDescriptionPane { createSetPassphraseButton(); createSignButton(); - if (device.getNeedsPinSent() != null && device.getNeedsPinSent()) { - unlockButton.setVisible(true); - } else if(device.getNeedsPassphraseSent() != null && device.getNeedsPassphraseSent()) { - setPassphraseButton.setVisible(true); - } else { - showOperationButton(); - } + initialise(device); buttonBox.getChildren().addAll(setPassphraseButton, signButton); } @@ -130,13 +113,7 @@ public class DevicePane extends TitledDescriptionPane { createSetPassphraseButton(); createDisplayAddressButton(); - if (device.getNeedsPinSent() != null && device.getNeedsPinSent()) { - unlockButton.setVisible(true); - } else if(device.getNeedsPassphraseSent() != null && device.getNeedsPassphraseSent()) { - setPassphraseButton.setVisible(true); - } else { - showOperationButton(); - } + initialise(device); buttonBox.getChildren().addAll(setPassphraseButton, displayAddressButton); } @@ -156,15 +133,24 @@ public class DevicePane extends TitledDescriptionPane { createSetPassphraseButton(); createSignMessageButton(); - if (device.getNeedsPinSent() != null && device.getNeedsPinSent()) { + initialise(device); + + buttonBox.getChildren().addAll(setPassphraseButton, signMessageButton); + } + + private void initialise(Device device) { + if(device.getNeedsPinSent() != null && device.getNeedsPinSent()) { unlockButton.setVisible(true); } else if(device.getNeedsPassphraseSent() != null && device.getNeedsPassphraseSent()) { setPassphraseButton.setVisible(true); + } else if(device.getError() != null) { + setError("Error", device.getError()); + Platform.runLater(() -> { + setExpanded(true); + }); } else { showOperationButton(); } - - buttonBox.getChildren().addAll(setPassphraseButton, signMessageButton); } @Override