diff --git a/drongo b/drongo index 143d2816..d4bdd9f3 160000 --- a/drongo +++ b/drongo @@ -1 +1 @@ -Subproject commit 143d28166a9a0b28469d1c57c460718e71803029 +Subproject commit d4bdd9f3853c4dde0dc2ebeb08b1cfea33265933 diff --git a/src/main/java/com/sparrowwallet/sparrow/transaction/HeadersController.java b/src/main/java/com/sparrowwallet/sparrow/transaction/HeadersController.java index 80db7264..e7f41d7d 100644 --- a/src/main/java/com/sparrowwallet/sparrow/transaction/HeadersController.java +++ b/src/main/java/com/sparrowwallet/sparrow/transaction/HeadersController.java @@ -1386,8 +1386,9 @@ public class HeadersController extends TransactionFormController implements Init @Subscribe public void openWallets(OpenWalletsEvent event) { if(id.getScene().getWindow().equals(event.getWindow()) && headersForm.getPsbt() != null && headersForm.getBlockTransaction() == null) { - List availableWallets = event.getWallets().stream().filter(wallet -> wallet.canSignAllInputs(headersForm.getPsbt())).sorted(new WalletSignComparator()).collect(Collectors.toList()); - if(availableWallets.isEmpty()) { + List availableWallets = event.getWallets().stream().filter(wallet -> wallet.canSign(headersForm.getPsbt())).sorted(new WalletSignComparator()).collect(Collectors.toList()); + List signingAllInputsWallets = event.getWallets().stream().filter(wallet -> wallet.canSignAllInputs(headersForm.getPsbt())).sorted(new WalletSignComparator()).collect(Collectors.toList()); + if(availableWallets.isEmpty() || !availableWallets.equals(signingAllInputsWallets)) { for(Wallet wallet : event.getWalletsMap().keySet()) { if(wallet.isValid() && !wallet.getSigningKeystores(headersForm.getPsbt()).isEmpty()) { int currentGapLimit = wallet.getGapLimit();