mirror of
https://github.com/sparrowwallet/sparrow.git
synced 2024-12-25 13:16:44 +00:00
only allow sweeping from uncompressed keys to legacy script type addresses
This commit is contained in:
parent
675b7ed4f8
commit
d425933189
1 changed files with 11 additions and 0 deletions
|
@ -190,6 +190,7 @@ public class PrivateKeySweepDialog extends Dialog<Transaction> {
|
||||||
|
|
||||||
boolean isValidKey = isValidKey();
|
boolean isValidKey = isValidKey();
|
||||||
createButton.setDisable(!isValidKey || !isValidToAddress());
|
createButton.setDisable(!isValidKey || !isValidToAddress());
|
||||||
|
setScriptTypes(isValidKey);
|
||||||
if(isValidKey) {
|
if(isValidKey) {
|
||||||
setFromAddress();
|
setFromAddress();
|
||||||
}
|
}
|
||||||
|
@ -289,6 +290,16 @@ public class PrivateKeySweepDialog extends Dialog<Transaction> {
|
||||||
keyAddress.setText(address.toString());
|
keyAddress.setText(address.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void setScriptTypes(boolean isValidKey) {
|
||||||
|
boolean compressed = !isValidKey || getPrivateKey().getKey().isCompressed();
|
||||||
|
if(compressed && !keyScriptType.getItems().equals(ScriptType.getAddressableScriptTypes(PolicyType.SINGLE))) {
|
||||||
|
keyScriptType.getItems().addAll(ScriptType.getAddressableScriptTypes(PolicyType.SINGLE).stream().filter(s -> !keyScriptType.getItems().contains(s)).collect(Collectors.toList()));
|
||||||
|
} else if(!compressed && !keyScriptType.getItems().equals(List.of(ScriptType.P2PKH))) {
|
||||||
|
keyScriptType.getSelectionModel().select(0);
|
||||||
|
keyScriptType.getItems().removeIf(scriptType -> scriptType != ScriptType.P2PKH);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void scanPrivateKey() {
|
private void scanPrivateKey() {
|
||||||
QRScanDialog qrScanDialog = new QRScanDialog();
|
QRScanDialog qrScanDialog = new QRScanDialog();
|
||||||
qrScanDialog.initOwner(getDialogPane().getScene().getWindow());
|
qrScanDialog.initOwner(getDialogPane().getScene().getWindow());
|
||||||
|
|
Loading…
Reference in a new issue