diff --git a/electrum/gui/kivy/main_window.py b/electrum/gui/kivy/main_window.py index de144ff31..9394e26b3 100644 --- a/electrum/gui/kivy/main_window.py +++ b/electrum/gui/kivy/main_window.py @@ -159,7 +159,10 @@ class ElectrumWindow(App): use_change = BooleanProperty(False) def on_use_change(self, instance, x): - self.electrum_config.set_key('use_change', self.use_change, True) + if self.wallet: + self.wallet.use_change = self.use_change + self.wallet.storage.put('use_change', self.use_change) + self.wallet.storage.write() use_unconfirmed = BooleanProperty(False) def on_use_unconfirmed(self, instance, x): @@ -339,7 +342,6 @@ class ElectrumWindow(App): self.fx = self.daemon.fx self.use_rbf = config.get('use_rbf', True) - self.use_change = config.get('use_change', True) self.use_unconfirmed = not config.get('confirmed_only', False) # create triggers so as to minimize updating a max of 2 times a sec @@ -783,7 +785,7 @@ class ElectrumWindow(App): self._trigger_update_wallet() @profiler - def load_wallet(self, wallet): + def load_wallet(self, wallet: 'Abstract_Wallet'): if self.wallet: self.stop_wallet() self.wallet = wallet @@ -800,6 +802,8 @@ class ElectrumWindow(App): except InternalAddressCorruption as e: self.show_error(str(e)) send_exception_to_crash_reporter(e) + return + self.use_change = self.wallet.use_change def update_status(self, *dt): if not self.wallet: