Browse Source

Test if initialized to determine watching only

Prepares for device wipe functionality
283
Neil Booth 9 years ago
parent
commit
9eaf510ac6
  1. 6
      plugins/trezor/client.py
  2. 7
      plugins/trezor/plugin.py

6
plugins/trezor/client.py

@ -80,11 +80,17 @@ def trezor_client_class(protocol_mixin, base_client, proto):
return "%s/%s/%s" % (self.label(), self.device_id(), self.path[0])
def label(self):
'''The name given by the user to the device.'''
return self.features.label
def device_id(self):
'''The device serial number.'''
return self.features.device_id
def is_initialized(self):
'''True if initialized, False if wiped.'''
return self.features.initialized
def handler(self):
assert self.wallet and self.wallet.handler
return self.wallet.handler

7
plugins/trezor/plugin.py

@ -49,10 +49,11 @@ class TrezorCompatibleWallet(BIP44_Wallet):
return False
def is_watching_only(self):
'''The wallet is watching-only if its trezor device is not
connected. This result is dynamic and changes over time.'''
'''The wallet is watching-only if its trezor device is not connected,
or if it is connected but uninitialized.'''
assert not self.has_seed()
return self.plugin.lookup_client(self) is None
client = self.plugin.lookup_client(self)
return not (client and client.is_initialized())
def can_change_password(self):
return False

Loading…
Cancel
Save