From 1503b84a73dd7eb2d7881117d6a915b30157357f Mon Sep 17 00:00:00 2001 From: proto <34919827+protoniuman@users.noreply.github.com> Date: Wed, 17 Aug 2022 17:51:21 +0100 Subject: [PATCH] Added memo field to the send ARRR dialog added a memo text field to be set while sending ARRR to another wallets --- qortal-ui-core/language/us.json | 4 +- .../plugins/core/wallet/wallet-app.src.js | 42 ++++++++++++++++++- 2 files changed, 44 insertions(+), 2 deletions(-) diff --git a/qortal-ui-core/language/us.json b/qortal-ui-core/language/us.json index 6ed4f7f1..2caeb32a 100644 --- a/qortal-ui-core/language/us.json +++ b/qortal-ui-core/language/us.json @@ -235,7 +235,9 @@ "wchange42":"Confirmations", "wchange43":"Your transaction will not show until confirmed, be patient...", "wchange44":"Please try again...", - "wchange45":"Send all" + "wchange45":"Send all", + "wchange46":"Memo" + }, "tradepage":{ "tchange1":"Trade Portal", diff --git a/qortal-ui-plugins/plugins/core/wallet/wallet-app.src.js b/qortal-ui-plugins/plugins/core/wallet/wallet-app.src.js index 5de5ac32..e6bef4d8 100644 --- a/qortal-ui-plugins/plugins/core/wallet/wallet-app.src.js +++ b/qortal-ui-plugins/plugins/core/wallet/wallet-app.src.js @@ -52,10 +52,11 @@ class MultiWallet extends LitElement { dogeAmount: { type: Number }, dgbRecipient: { type: String }, dgbAmount: { type: Number }, - rvnRecipient: { type: String }, + rvnRecipient: { type: String }, rvnAmount: { type: Number }, arrrRecipient: { type: String }, arrrAmount: { type: Number }, + arrrMemo: { type: String }, errorMessage: { type: String }, arrrWalletAddress: { type: String }, successMessage: { type: String }, @@ -616,6 +617,7 @@ class MultiWallet extends LitElement { this.dgbRecipient = '' this.rvnRecipient = '' this.arrrRecipient = '' + this.arrrMemo = '' this.arrrWalletAddress = '' this.errorMessage = '' this.successMessage = '' @@ -1598,6 +1600,17 @@ class MultiWallet extends LitElement { >

+

+ + +

${this.errorMessage}

${this.successMessage}

${this.sendMoneyLoading ? html` ` : ''} @@ -1989,6 +2002,29 @@ class MultiWallet extends LitElement { } checkSelectedTextAndShowMenu() }) + + this.shadowRoot.getElementById('arrrMemo').addEventListener('contextmenu', (event) => { + const getSelectedText = () => { + var text = '' + if (typeof window.getSelection != 'undefined') { + text = window.getSelection().toString() + } else if (typeof this.shadowRoot.selection != 'undefined' && this.shadowRoot.selection.type == 'Text') { + text = this.shadowRoot.selection.createRange().text + } + return text + } + const checkSelectedTextAndShowMenu = () => { + let selectedText = getSelectedText() + if (selectedText && typeof selectedText === 'string') { + } else { + this.pasteMenu(event, 'arrrMemo') + this.isPasteMenuOpen = true + event.preventDefault() + event.stopPropagation() + } + } + checkSelectedTextAndShowMenu() + }) } renderClearSuccess() { @@ -2571,6 +2607,7 @@ class MultiWallet extends LitElement { async sendArrr() { const arrrAmount = this.shadowRoot.getElementById('arrrAmountInput').value let arrrRecipient = this.shadowRoot.getElementById('arrrRecipient').value + let arrrMemo = this.shadowRoot.getElementById('arrrMemo').value const seed58 = this.wallets.get(this._selectedWallet).wallet.seed58 this.sendMoneyLoading = true @@ -2581,6 +2618,7 @@ class MultiWallet extends LitElement { entropy58: seed58, receivingAddress: arrrRecipient, arrrAmount: arrrAmount, + arrrMemo: arrrMemo //feePerByte: (this.arrrFeePerByte / 1e8).toFixed(8), // Not supported in ARRR } const response = await parentEpml.request('sendArrr', opts) @@ -2591,8 +2629,10 @@ class MultiWallet extends LitElement { if (response.length === 64) { this.shadowRoot.getElementById('arrrAmountInput').value = 0 this.shadowRoot.getElementById('arrrRecipient').value = '' + this.shadowRoot.getElementById('arrrMemo').value = '' this.errorMessage = '' this.arrrRecipient = '' + this.arrrMemo='' this.arrrAmount = 0 this.successMessage = this.renderSuccessText() this.sendMoneyLoading = false