Merge pull request #3625 from SomberNight/fee_ui_offline
fix fee ui: offline case
This commit is contained in:
@@ -44,7 +44,7 @@ from electrum.plugins import run_hook
|
||||
from electrum.i18n import _
|
||||
from electrum.util import (format_time, format_satoshis, PrintError,
|
||||
format_satoshis_plain, NotEnoughFunds,
|
||||
UserCancelled)
|
||||
UserCancelled, NoDynamicFeeEstimates)
|
||||
from electrum import Transaction
|
||||
from electrum import util, bitcoin, commands, coinchooser
|
||||
from electrum import paymentrequest
|
||||
@@ -1068,7 +1068,8 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
||||
else:
|
||||
self.config.set_key('fee_per_kb', fee_rate, False)
|
||||
|
||||
self.feerate_e.setAmount(fee_rate // 1000)
|
||||
if fee_rate:
|
||||
self.feerate_e.setAmount(fee_rate // 1000)
|
||||
self.fee_e.setModified(False)
|
||||
|
||||
self.fee_slider.activate()
|
||||
@@ -1098,6 +1099,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
||||
self.size_e = TxSizeLabel()
|
||||
self.size_e.setAlignment(Qt.AlignCenter)
|
||||
self.size_e.setAmount(0)
|
||||
self.size_e.setFixedWidth(140)
|
||||
self.size_e.setStyleSheet(ColorScheme.DEFAULT.as_stylesheet())
|
||||
|
||||
self.feerate_e = FeerateEdit(lambda: 2 if self.fee_unit else 0)
|
||||
@@ -1242,17 +1244,24 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
||||
if not outputs:
|
||||
_type, addr = self.get_payto_or_dummy()
|
||||
outputs = [(_type, addr, amount)]
|
||||
try:
|
||||
is_sweep = bool(self.tx_external_keypairs)
|
||||
tx = self.wallet.make_unsigned_transaction(
|
||||
is_sweep = bool(self.tx_external_keypairs)
|
||||
make_tx = lambda fee_est: \
|
||||
self.wallet.make_unsigned_transaction(
|
||||
self.get_coins(), outputs, self.config,
|
||||
fixed_fee=fee_estimator, is_sweep=is_sweep)
|
||||
fixed_fee=fee_est, is_sweep=is_sweep)
|
||||
try:
|
||||
tx = make_tx(fee_estimator)
|
||||
self.not_enough_funds = False
|
||||
except NotEnoughFunds:
|
||||
self.not_enough_funds = True
|
||||
if not freeze_fee:
|
||||
self.fee_e.setAmount(None)
|
||||
return
|
||||
except NoDynamicFeeEstimates:
|
||||
tx = make_tx(0)
|
||||
size = tx.estimated_size()
|
||||
self.size_e.setAmount(size)
|
||||
return
|
||||
except BaseException:
|
||||
traceback.print_exc(file=sys.stderr)
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user