electrum

Electrum Bitcoin wallet
git clone https://git.parazyd.org/electrum
Log | Files | Refs | Submodules

commit 2f223cdf467962cb53fdf43d8cf856ad541920c6
parent d85e910262df4cf0c29a4620102d1fb51850c290
Author: SomberNight <somber.night@protonmail.com>
Date:   Sat, 27 Feb 2021 15:15:09 +0100

qt channels dialog: fix for channel backups

Diffstat:
Melectrum/gui/qt/channels_list.py | 28++++++++++++++++++----------
1 file changed, 18 insertions(+), 10 deletions(-)

diff --git a/electrum/gui/qt/channels_list.py b/electrum/gui/qt/channels_list.py @@ -11,7 +11,7 @@ from PyQt5.QtGui import QFont, QStandardItem, QBrush from electrum.util import bh2u, NotEnoughFunds, NoDynamicFeeEstimates from electrum.i18n import _ -from electrum.lnchannel import AbstractChannel, PeerState +from electrum.lnchannel import AbstractChannel, PeerState, ChannelBackup, Channel from electrum.wallet import Abstract_Wallet from electrum.lnutil import LOCAL, REMOTE, format_short_channel_id, LN_MAX_FUNDING_SAT from electrum.lnworker import LNWallet @@ -68,24 +68,32 @@ class ChannelsList(MyTreeView): self.lnbackups = self.parent.wallet.lnbackups self.setSortingEnabled(True) - def format_fields(self, chan): + def format_fields(self, chan: AbstractChannel) -> Sequence[str]: labels = {} for subject in (REMOTE, LOCAL): - can_send = chan.available_to_spend(subject) / 1000 - label = self.parent.format_amount(can_send) - other = subject.inverted() - bal_other = chan.balance(other)//1000 - bal_minus_htlcs_other = chan.balance_minus_outgoing_htlcs(other)//1000 - if bal_other != bal_minus_htlcs_other: - label += ' (+' + self.parent.format_amount(bal_other - bal_minus_htlcs_other) + ')' + if isinstance(chan, Channel): + can_send = chan.available_to_spend(subject) / 1000 + label = self.parent.format_amount(can_send) + other = subject.inverted() + bal_other = chan.balance(other)//1000 + bal_minus_htlcs_other = chan.balance_minus_outgoing_htlcs(other)//1000 + if bal_other != bal_minus_htlcs_other: + label += ' (+' + self.parent.format_amount(bal_other - bal_minus_htlcs_other) + ')' + else: + assert isinstance(chan, ChannelBackup) + label = '' labels[subject] = label status = chan.get_state_for_GUI() closed = chan.is_closed() node_alias = self.lnworker.get_node_alias(chan.node_id) + if isinstance(chan, Channel): + capacity_str = self.parent.format_amount(chan.constraints.capacity) + else: + capacity_str = '' return [ chan.short_id_for_GUI(), node_alias, - self.parent.format_amount(chan.constraints.capacity), + capacity_str, '' if closed else labels[LOCAL], '' if closed else labels[REMOTE], status