diff options
Diffstat (limited to 'pages/AddressBook.qml')
| -rw-r--r-- | pages/AddressBook.qml | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/pages/AddressBook.qml b/pages/AddressBook.qml index 396f6bed..65e315e2 100644 --- a/pages/AddressBook.qml +++ b/pages/AddressBook.qml @@ -387,8 +387,20 @@ Rectangle { visible: TxUtils.isValidOpenAliasAddress(addressLine.text) enabled : visible onClicked: { + const openAlias = addressLine.text; const response = TxUtils.handleOpenAliasResolution(addressLine.text, descriptionLine.text); if (response) { + if (response.confirm && response.address) { + const resolvedAddress = response.address; + const resolvedDescription = response.description; + oa_confirm(openAlias, resolvedAddress, function() { + addressLine.text = resolvedAddress; + if (resolvedDescription) { + descriptionLine.text = resolvedDescription; + } + }); + return; + } if (response.message) { oa_message(response.message); } @@ -532,6 +544,20 @@ Rectangle { oaPopup.open() } + function oa_confirm(openAlias, resolvedAddress, onAccepted) { + confirmationDialog.title = qsTr("OpenAlias warning") + translationManager.emptyString + confirmationDialog.text = qsTr("Address found, but the DNSSEC signatures could not be verified, so this address may be spoofed.") + "\n\n" + + qsTr("OpenAlias: ") + openAlias + "\n\n" + + qsTr("Resolved address: ") + resolvedAddress + "\n\n" + + qsTr("Only use this address if you trust this OpenAlias result.") + translationManager.emptyString + confirmationDialog.icon = StandardIcon.Question + confirmationDialog.cancelText = qsTr("Cancel") + translationManager.emptyString + confirmationDialog.okText = qsTr("Use address") + translationManager.emptyString + confirmationDialog.onAcceptedCallback = onAccepted + confirmationDialog.onRejectedCallback = null + confirmationDialog.open() + } + MoneroComponents.StandardDialog { // dynamically change onclose handler property var onCloseCallback |
