1
0

qml create request: if no address is available, show how to access

the list of pending requests.
This commit is contained in:
ThomasV
2023-03-31 10:19:43 +02:00
parent 1babc96913
commit ea46d3c318
2 changed files with 9 additions and 21 deletions

View File

@@ -265,21 +265,9 @@ Item {
function onRequestCreateSuccess(key) {
openRequest(key)
}
function onRequestCreateError(code, error) {
if (code == 'ln') {
var dialog = app.messageDialog.createObject(app, {text: error, yesno: true})
dialog.yesClicked.connect(function() {
createRequest(true, false)
})
} else if (code == 'reuse_addr') {
var dialog = app.messageDialog.createObject(app, {text: error, yesno: true})
dialog.yesClicked.connect(function() {
createRequest(false, true)
})
} else {
console.log(error)
var dialog = app.messageDialog.createObject(app, {text: error})
}
function onRequestCreateError(error) {
console.log(error)
var dialog = app.messageDialog.createObject(app, {text: error})
dialog.open()
}
}

View File

@@ -55,7 +55,7 @@ class QEWallet(AuthMixin, QObject, QtEventListener):
requestStatusChanged = pyqtSignal([str,int], arguments=['key','status'])
requestCreateSuccess = pyqtSignal([str], arguments=['key'])
requestCreateError = pyqtSignal([str,str], arguments=['code','error'])
requestCreateError = pyqtSignal([str], arguments=['error'])
invoiceStatusChanged = pyqtSignal([str,int], arguments=['key','status'])
invoiceCreateSuccess = pyqtSignal()
invoiceCreateError = pyqtSignal([str,str], arguments=['code','error'])
@@ -621,16 +621,16 @@ class QEWallet(AuthMixin, QObject, QtEventListener):
else:
has_lightning = self.wallet.has_lightning()
msg = [
_('No more unused addresses in your wallet.'),
_('All your addresses are used by unpaid requests.'),
_('No address available.'),
_('All your addresses are used in pending requests.'),
_('To see the list, press and hold the Receive button.'),
]
msg.append(_('Do you wish to create a lightning-only request?') if has_lightning else _('Do you want to reuse an address?'))
self.requestCreateError.emit('ln' if has_lightning else 'reuse_addr', ' '.join(msg))
self.requestCreateError.emit(' '.join(msg))
return
key = self.wallet.create_request(amount, message, expiration, addr)
except InvoiceError as e:
self.requestCreateError.emit('fatal',_('Error creating payment request') + ':\n' + str(e))
self.requestCreateError.emit(_('Error creating payment request') + ':\n' + str(e))
return
assert key is not None