From 2904615211848698f52768f17ba0fea5e635c732 Mon Sep 17 00:00:00 2001 From: ThomasV Date: Thu, 26 Nov 2020 09:08:20 +0100 Subject: [PATCH] kivy: do not display internal id of onchain invoice, show address instead --- electrum/gui/kivy/uix/screens.py | 7 +++++-- electrum/gui/kivy/uix/ui_screens/send.kv | 3 ++- electrum/invoices.py | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/electrum/gui/kivy/uix/screens.py b/electrum/gui/kivy/uix/screens.py index 94761ef47..eab111488 100644 --- a/electrum/gui/kivy/uix/screens.py +++ b/electrum/gui/kivy/uix/screens.py @@ -230,6 +230,7 @@ class SendScreen(CScreen, Logger): if is_lightning: assert isinstance(item, LNInvoice) key = item.rhash + address = key log = self.app.wallet.lnworker.logs.get(key) if status == PR_INFLIGHT and log: status_str += '... (%d)'%len(log) @@ -237,6 +238,7 @@ class SendScreen(CScreen, Logger): else: assert isinstance(item, OnchainInvoice) key = item.id + address = item.get_address() is_bip70 = bool(item.bip70) return { 'is_lightning': is_lightning, @@ -245,7 +247,8 @@ class SendScreen(CScreen, Logger): 'status': status, 'status_str': status_str, 'key': key, - 'memo': item.message, + 'memo': item.message or _('No Description'), + 'address': address, 'amount': self.app.format_amount_and_units(item.get_amount_sat() or 0), } @@ -505,7 +508,7 @@ class ReceiveScreen(CScreen): ci['is_lightning'] = is_lightning ci['key'] = key ci['amount'] = self.app.format_amount_and_units(amount) if amount else '' - ci['memo'] = description + ci['memo'] = description or _('No Description') ci['status'] = status ci['status_str'] = status_str return ci diff --git a/electrum/gui/kivy/uix/ui_screens/send.kv b/electrum/gui/kivy/uix/ui_screens/send.kv index 7179d6049..2483f3d47 100644 --- a/electrum/gui/kivy/uix/ui_screens/send.kv +++ b/electrum/gui/kivy/uix/ui_screens/send.kv @@ -15,6 +15,7 @@ key: '' + address: '' memo: '' amount: '' status: PR_UNKNOWN @@ -31,7 +32,7 @@ shorten_from: 'right' Widget PaymentLabel: - text: root.key + text: root.address color: .699, .699, .699, 1 font_size: '13sp' shorten: True diff --git a/electrum/invoices.py b/electrum/invoices.py index acf7fe0d3..3fe2616c1 100644 --- a/electrum/invoices.py +++ b/electrum/invoices.py @@ -120,7 +120,7 @@ class OnchainInvoice(Invoice): requestor = attr.ib(type=str, kw_only=True) # type: Optional[str] def get_address(self) -> str: - assert len(self.outputs) == 1 + """returns the first address, to be displayed in GUI""" return self.outputs[0].address def get_amount_sat(self) -> Union[int, str]: