tkivy: allow address reuse in imported wallets. (fix #6852) - electrum - Electrum Bitcoin wallet HTML git clone https://git.parazyd.org/electrum DIR Log DIR Files DIR Refs DIR Submodules --- DIR commit 06b9d485351e48967390b3b7edac181f0579a994 DIR parent 43614af2c4557726daa4576a381fe63f8387c542 HTML Author: ThomasV <thomasv@electrum.org> Date: Wed, 16 Dec 2020 10:05:17 +0100 kivy: allow address reuse in imported wallets. (fix #6852) Diffstat: M electrum/gui/kivy/uix/dialogs/requ… | 4 ++++ M electrum/gui/kivy/uix/screens.py | 7 +++++-- 2 files changed, 9 insertions(+), 2 deletions(-) --- DIR diff --git a/electrum/gui/kivy/uix/dialogs/request_dialog.py b/electrum/gui/kivy/uix/dialogs/request_dialog.py t@@ -116,6 +116,10 @@ class RequestDialog(Factory.Popup): if self.status == PR_UNPAID and self.is_lightning and self.app.wallet.lnworker: if self.amount_sat and self.amount_sat > self.app.wallet.lnworker.num_sats_can_receive(): self.warning = _('Warning') + ': ' + _('This amount exceeds the maximum you can currently receive with your channels') + if self.status == PR_UNPAID and not self.is_lightning: + address = req.get_address() + if self.app.wallet.is_used(address): + self.warning = _('Warning') + ': ' + _('This address is being reused') def on_dismiss(self): self.app.request_popup = None DIR diff --git a/electrum/gui/kivy/uix/screens.py b/electrum/gui/kivy/uix/screens.py t@@ -491,8 +491,11 @@ class ReceiveScreen(CScreen): else: addr = self.address or self.app.wallet.get_unused_address() if not addr: - self.app.show_info(_('No address available. Please remove some of your pending requests.')) - return + if not self.app.wallet.is_deterministic(): + addr = self.app.wallet.get_receiving_address() + else: + self.app.show_info(_('No address available. Please remove some of your pending requests.')) + return self.address = addr req = self.app.wallet.make_payment_request(addr, amount, message, self.expiry()) self.app.wallet.add_payment_request(req)