Browse Source

qml: add option to open ReceiveDialog with existing request key

master
Sander van Grieken 3 years ago
parent
commit
f12fe4af4d
  1. 6
      electrum/gui/qml/components/ReceiveDialog.qml
  2. 10
      electrum/gui/qml/components/ReceiveRequests.qml
  3. 6
      electrum/gui/qml/components/WalletMainView.qml

6
electrum/gui/qml/components/ReceiveDialog.qml

@ -13,6 +13,8 @@ ElDialog {
title: qsTr('Receive Payment')
property string key
property string _bolt11: request.bolt11
property string _bip21uri: request.bip21
property string _address: request.address
@ -441,9 +443,13 @@ ElDialog {
}
Component.onCompleted: {
if (dialog.key) {
request.key = dialog.key
} else {
// callLater to make sure any popups are on top of the dialog stacking order
Qt.callLater(createDefaultRequest)
}
}
// hack. delay qr rendering until dialog is shown
Connections {

10
electrum/gui/qml/components/ReceiveRequests.qml

@ -5,6 +5,8 @@ import QtQuick.Controls.Material 2.0
import QtQml.Models 2.1
import QtQml 2.6
import org.electrum 1.0
import "controls"
Pane {
@ -35,10 +37,10 @@ Pane {
model: Daemon.currentWallet.requestModel
delegate: InvoiceDelegate {
onClicked: {
//var dialog = app.stack.getRoot().openInvoice(model.key)
// dialog.invoiceAmountChanged.connect(function () {
// Daemon.currentWallet.invoiceModel.init_model()
// })
// TODO: only open unpaid?
if (model.status == Invoice.Unpaid) {
app.stack.getRoot().openRequest(model.key)
}
}
}
}

6
electrum/gui/qml/components/WalletMainView.qml

@ -21,6 +21,12 @@ Item {
return dialog
}
function openRequest(key) {
var dialog = receiveDialog.createObject(app, { key: key })
dialog.open()
return dialog
}
function openSendDialog() {
_sendDialog = sendDialog.createObject(mainView, {invoiceParser: invoiceParser})
_sendDialog.open()

Loading…
Cancel
Save