URI: 
       tkivy: do not display internal id of onchain invoice, show address instead - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit 2904615211848698f52768f17ba0fea5e635c732
   DIR parent 8e2320552fd8d2aece0ffd57598affd6908bd518
  HTML Author: ThomasV <thomasv@electrum.org>
       Date:   Thu, 26 Nov 2020 09:08:20 +0100
       
       kivy: do not display internal id of onchain invoice, show address instead
       
       Diffstat:
         M electrum/gui/kivy/uix/screens.py    |       7 +++++--
         M electrum/gui/kivy/uix/ui_screens/s… |       3 ++-
         M electrum/invoices.py                |       2 +-
       
       3 files changed, 8 insertions(+), 4 deletions(-)
       ---
   DIR diff --git a/electrum/gui/kivy/uix/screens.py b/electrum/gui/kivy/uix/screens.py
       t@@ -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)
       t@@ -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,
       t@@ -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),
                }
        
       t@@ -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
   DIR diff --git a/electrum/gui/kivy/uix/ui_screens/send.kv b/electrum/gui/kivy/uix/ui_screens/send.kv
       t@@ -15,6 +15,7 @@
        
        <PaymentItem@CardItem>
            key: ''
       +    address: ''
            memo: ''
            amount: ''
            status: PR_UNKNOWN
       t@@ -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
   DIR diff --git a/electrum/invoices.py b/electrum/invoices.py
       t@@ -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]: