Browse Source

wizard: fix trezor initialisation/recover not setting page valid to True

add auto-proceed to next page after init to trezor, safe_t, keepkey
master
Sander van Grieken 2 years ago
parent
commit
22d3a5edbb
  1. 2
      electrum/plugins/coldcard/coldcard.py
  2. 2
      electrum/plugins/jade/jade.py
  3. 2
      electrum/plugins/keepkey/keepkey.py
  4. 8
      electrum/plugins/keepkey/qt.py
  5. 2
      electrum/plugins/ledger/ledger.py
  6. 8
      electrum/plugins/safe_t/qt.py
  7. 2
      electrum/plugins/safe_t/safe_t.py
  8. 16
      electrum/plugins/trezor/qt.py
  9. 2
      electrum/plugins/trezor/trezor.py

2
electrum/plugins/coldcard/coldcard.py

@ -602,8 +602,6 @@ class ColdcardPlugin(HW_PluginBase):
keystore.handler.show_error(_('This function is only available for standard wallets when using {}.').format(self.device))
return
# new wizard
def wizard_entry_for_device(self, device_info: 'DeviceInfo', *, new_wallet=True) -> str:
if new_wallet:
return 'coldcard_start' if device_info.initialized else 'coldcard_not_initialized'

2
electrum/plugins/jade/jade.py

@ -463,8 +463,6 @@ class JadePlugin(HW_PluginBase):
if hw_address != address:
keystore.handler.show_error(_('The address generated by {} does not match!').format(self.device))
# new wizard
def wizard_entry_for_device(self, device_info: 'DeviceInfo', *, new_wallet=True) -> str:
if new_wallet:
return 'jade_start' if device_info.initialized else 'jade_not_initialized'

2
electrum/plugins/keepkey/keepkey.py

@ -425,8 +425,6 @@ class KeepKeyPlugin(HW_PluginBase):
tx = self.prev_tx[tx_hash]
return self.electrum_tx_to_txtype(tx)
# new wizard
def wizard_entry_for_device(self, device_info: 'DeviceInfo', *, new_wallet=True) -> str:
if new_wallet:
return 'keepkey_start' if device_info.initialized else 'keepkey_not_initialized'

8
electrum/plugins/keepkey/qt.py

@ -678,12 +678,14 @@ class WCKeepkeyInit(WizardComponent, Logger):
def initialize_device_task(settings, method, device_id, handler):
try:
self.plugin._initialize_device(settings, method, device_id, handler)
self.logger.info('Done initialize device')
self.valid = True
self.wizard.requestNext.emit() # triggers Next GUI thread from event loop
except Exception as e:
self.valid = False
self.error = repr(e)
finally:
self.init_done()
self.busy = False
t = threading.Thread(
target=initialize_device_task,
@ -691,9 +693,5 @@ class WCKeepkeyInit(WizardComponent, Logger):
daemon=True)
t.start()
def init_done(self):
self.logger.info('Done initialize device')
self.busy = False
def apply(self):
pass

2
electrum/plugins/ledger/ledger.py

@ -1454,8 +1454,6 @@ class LedgerPlugin(HW_PluginBase):
keystore.show_address(sequence, txin_type)
# new wizard
def wizard_entry_for_device(self, device_info: 'DeviceInfo', *, new_wallet=True) -> str:
if new_wallet:
return 'ledger_start' if device_info.initialized else 'ledger_not_initialized'

8
electrum/plugins/safe_t/qt.py

@ -610,12 +610,14 @@ class WCSafeTInit(WizardComponent, Logger):
def initialize_device_task(settings, method, device_id, handler):
try:
self.plugin._initialize_device(settings, method, device_id, handler)
self.logger.info('Done initialize device')
self.valid = True
self.wizard.requestNext.emit() # triggers Next GUI thread from event loop
except Exception as e:
self.valid = False
self.error = repr(e)
finally:
self.init_done()
self.busy = False
t = threading.Thread(
target=initialize_device_task,
@ -623,9 +625,5 @@ class WCSafeTInit(WizardComponent, Logger):
daemon=True)
t.start()
def init_done(self):
self.logger.info('Done initialize device')
self.busy = False
def apply(self):
pass

2
electrum/plugins/safe_t/safe_t.py

@ -397,8 +397,6 @@ class SafeTPlugin(HW_PluginBase):
tx = self.prev_tx[tx_hash]
return self.electrum_tx_to_txtype(tx)
# new wizard
def wizard_entry_for_device(self, device_info: 'DeviceInfo', *, new_wallet=True) -> str:
if new_wallet:
return 'safet_start' if device_info.initialized else 'safet_not_initialized'

16
electrum/plugins/trezor/qt.py

@ -885,8 +885,16 @@ class WCTrezorInit(WizardComponent, Logger):
client.handler = self.plugin.create_handler(self.wizard)
def initialize_device_task(settings, method, device_id, handler):
self.plugin._initialize_device(settings, method, device_id, handler)
self.init_done()
try:
self.plugin._initialize_device(settings, method, device_id, handler)
self.logger.info('Done initialize device')
self.valid = True
self.wizard.requestNext.emit() # triggers Next GUI thread from event loop
except Exception as e:
self.valid = False
self.error = repr(e)
finally:
self.busy = False
t = threading.Thread(
target=initialize_device_task,
@ -894,9 +902,5 @@ class WCTrezorInit(WizardComponent, Logger):
daemon=True)
t.start()
def init_done(self):
self.logger.info('Done initialize device')
self.busy = False
def apply(self):
pass

2
electrum/plugins/trezor/trezor.py

@ -465,8 +465,6 @@ class TrezorPlugin(HW_PluginBase):
]
return t
# new wizard
def wizard_entry_for_device(self, device_info: 'DeviceInfo', *, new_wallet=True) -> str:
if new_wallet: # new wallet
return 'trezor_not_initialized' if not device_info.initialized else 'trezor_start'

Loading…
Cancel
Save