1
0

qml: allow separate data for clipboard/share and QR code in GenericShareDialog

This commit is contained in:
Sander van Grieken
2022-08-23 20:21:18 +02:00
parent 65b3c1abb3
commit 1e375ae9e1
3 changed files with 13 additions and 7 deletions

View File

@@ -9,6 +9,8 @@ ElDialog {
id: dialog
property string text
property string text_qr
// if text_qr is undefined text will be used
title: ''
parent: Overlay.overlay
@@ -97,6 +99,6 @@ ElDialog {
}
Component.onCompleted: {
qr.qrdata = dialog.text
qr.qrdata = dialog.text_qr ? dialog.text_qr : dialog.text
}
}

View File

@@ -18,9 +18,9 @@ Pane {
is_max.checked = false
}
function showUnsignedTx(tx) {
function showUnsignedTx(tx, qrtx) {
var dialog = app.genericShareDialog.createObject(rootItem,
{ title: qsTr('Raw Transaction'), text: tx }
{ title: qsTr('Raw Transaction'), text: tx, text_qr: qrtx }
)
dialog.open()
}
@@ -187,7 +187,7 @@ Pane {
userEnteredPayment.clear()
rootItem.clear()
if (Daemon.currentWallet.isWatchOnly) {
showUnsignedTx(dialog.finalizer.serializedTx())
showUnsignedTx(dialog.finalizer.serializedTx(false), dialog.finalizer.serializedTx(true))
} else {
dialog.finalizer.send_onchain()
}
@@ -300,7 +300,7 @@ Pane {
var wo = Daemon.currentWallet.isWatchOnly
dialog.txaccepted.connect(function() {
if (wo) {
showUnsignedTx(dialog.finalizer.serializedTx())
showUnsignedTx(dialog.finalizer.serializedTx(false), dialog.finalizer.serializedTx(true))
} else {
dialog.finalizer.send_onchain()
}

View File

@@ -312,5 +312,9 @@ class QETxFinalizer(QObject):
self._wallet.sign(self._tx, broadcast=True)
@pyqtSlot(result=str)
def serializedTx(self):
return str(self._tx)
@pyqtSlot(bool, result=str)
def serializedTx(self, for_qr=False):
if for_qr:
return self._tx.to_qr_data()
else:
return str(self._tx)