1
0

qml: remember user selected request type and pre-select on subsequent payment requests

This commit is contained in:
Sander van Grieken
2023-01-27 11:44:46 +01:00
parent ee2e255699
commit a8f1d1c326
2 changed files with 20 additions and 1 deletions

View File

@@ -125,6 +125,7 @@ ElDialog {
else if (_bip21uri != '')
rootLayout.state = 'bip21uri'
}
Config.preferredRequestType = rootLayout.state
}
}
}
@@ -348,7 +349,14 @@ ElDialog {
id: request
wallet: Daemon.currentWallet
onDetailsChanged: {
if (bolt11) {
var req_type = Config.preferredRequestType
if (bolt11 && req_type == 'bolt11') {
rootLayout.state = 'bolt11'
} else if (bip21 && req_type == 'bip21uri') {
rootLayout.state = 'bip21uri'
} else if (req_type == 'address') {
rootLayout.state = 'address'
} else if (bolt11) {
rootLayout.state = 'bolt11'
} else if (bip21) {
rootLayout.state = 'bip21uri'

View File

@@ -167,6 +167,17 @@ class QEConfig(AuthMixin, QObject):
self.config.set_key('trustedcoin_prepay', num_prepay)
self.trustedcoinPrepayChanged.emit()
preferredRequestTypeChanged = pyqtSignal()
@pyqtProperty(str, notify=preferredRequestTypeChanged)
def preferredRequestType(self):
return self.config.get('preferred_request_type', 'bolt11')
@preferredRequestType.setter
def preferredRequestType(self, preferred_request_type):
if preferred_request_type != self.config.get('preferred_request_type', 'bolt11'):
self.config.set_key('preferred_request_type', preferred_request_type)
self.preferredRequestTypeChanged.emit()
@pyqtSlot('qint64', result=str)
@pyqtSlot('qint64', bool, result=str)
@pyqtSlot(QEAmount, result=str)