commit 78ce20b0b8461c84bd40d039b3346a448a9e810f
parent 36a5e095324248920f349335cfa32a6808943a1e
Author: ThomasV <thomasv@gitorious>
Date: Sat, 31 Jan 2015 18:09:50 +0100
fix plugins initialization
Diffstat:
3 files changed, 15 insertions(+), 19 deletions(-)
diff --git a/lib/plugins.py b/lib/plugins.py
@@ -46,6 +46,9 @@ def run_hook(name, *args):
for p, f in f_list:
if name == 'load_wallet':
p.wallet = args[0]
+ if name == 'init_qt':
+ gui = args[0]
+ p.window = gui.main_window
if name in SPECIAL_HOOKS or p.is_enabled():
try:
r = f(*args)
diff --git a/plugins/trezor.py b/plugins/trezor.py
@@ -55,11 +55,13 @@ class Plugin(BasePlugin):
return TREZOR
def is_available(self):
- if self.wallet is None:
- return self._is_available
- if self.wallet.storage.get('wallet_type') == 'trezor':
- return True
- return False
+ if not self._is_available:
+ return False
+ if not self.wallet:
+ return False
+ if self.wallet.storage.get('wallet_type') != 'trezor':
+ return False
+ return True
def requires_settings(self):
return self._requires_settings
@@ -70,11 +72,9 @@ class Plugin(BasePlugin):
def is_enabled(self):
if not self.is_available():
return False
-
- if not self.wallet or self.wallet.storage.get('wallet_type') == 'trezor':
- return True
-
- return self.wallet.storage.get('use_' + self.name) is True
+ if self.wallet.has_seed():
+ return False
+ return True
def enable(self):
return BasePlugin.enable(self)
@@ -98,9 +98,6 @@ class Plugin(BasePlugin):
@hook
def load_wallet(self, wallet):
- self.wallet = wallet
- if self.wallet.has_seed():
- return
if self.trezor_is_connected():
if not self.wallet.check_proper_device():
QMessageBox.information(self.window, _('Error'), _("This wallet does not match your Trezor device"), _('OK'))
diff --git a/plugins/trustedcoin.py b/plugins/trustedcoin.py
@@ -223,8 +223,8 @@ class Plugin(BasePlugin):
+ _("For more information, visit") + " <a href=\"https://api.trustedcoin.com/#/electrum-help\">https://api.trustedcoin.com/#/electrum-help</a>"
def is_available(self):
- if self.wallet is None:
- return True
+ if not self.wallet:
+ return False
if self.wallet.storage.get('wallet_type') == '2fa':
return True
return False
@@ -238,10 +238,6 @@ class Plugin(BasePlugin):
def is_enabled(self):
if not self.is_available():
return False
- if not self.wallet:
- return True
- if self.wallet.storage.get('wallet_type') != '2fa':
- return False
if self.wallet.master_private_keys.get('x2/'):
return False
return True