fix trezor initialiation hook (pass window in load_wallet)
This commit is contained in:
parent
70037b89a9
commit
f70a996619
|
@ -73,9 +73,6 @@ class ElectrumGui:
|
|||
if app is None:
|
||||
self.app = QApplication(sys.argv)
|
||||
self.app.installEventFilter(self.efilter)
|
||||
# let plugins know that we are using the qt gui
|
||||
always_hook('init_qt_app', self.app)
|
||||
|
||||
|
||||
def build_tray_menu(self):
|
||||
m = QMenu()
|
||||
|
@ -105,8 +102,6 @@ class ElectrumGui:
|
|||
def close(self):
|
||||
self.current_window.close()
|
||||
|
||||
|
||||
|
||||
def go_full(self):
|
||||
self.config.set_key('lite_mode', False, True)
|
||||
self.lite_window.hide()
|
||||
|
|
|
@ -236,8 +236,7 @@ class ElectrumWindow(QMainWindow):
|
|||
self.clear_receive_tab()
|
||||
self.update_receive_tab()
|
||||
self.show()
|
||||
run_hook('init_qt', self.gui_object)
|
||||
run_hook('load_wallet', wallet)
|
||||
run_hook('load_wallet', wallet, self)
|
||||
|
||||
def import_old_contacts(self):
|
||||
# backward compatibility: import contacts
|
||||
|
@ -2622,7 +2621,7 @@ class ElectrumWindow(QMainWindow):
|
|||
plugins[name] = p = module.Plugin(self.config, name)
|
||||
p.enable()
|
||||
p.wallet = self.wallet
|
||||
p.load_wallet(self.wallet)
|
||||
p.load_wallet(self.wallet, self)
|
||||
p.init_qt(self.gui_object)
|
||||
r = p.is_enabled()
|
||||
cb.setChecked(r)
|
||||
|
|
|
@ -525,7 +525,7 @@ class Commands:
|
|||
PR_PAID: 'Paid',
|
||||
PR_EXPIRED: 'Expired',
|
||||
}
|
||||
out['amount'] = format_satoshis(out.get('amount'))
|
||||
out['amount'] = format_satoshis(out.get('amount')) + ' BTC'
|
||||
out['status'] = pr_str[out.get('status', PR_UNKNOWN)]
|
||||
return out
|
||||
|
||||
|
@ -626,6 +626,7 @@ config_variables = {
|
|||
'requests_dir': 'directory where a bip70 file will be written.',
|
||||
'ssl_privkey': 'Path to your SSL private key, needed to sign the request.',
|
||||
'ssl_chain': 'Chain of SSL certificates, needed for signed requests. Put your certificate at the top and the root CA at the end',
|
||||
'url_rewrite': 'Parameters passed to str.replace(), in order to create the r= part of bitcoin: URIs. Example: \"(\'file:///var/www/\',\'https://electrum.org/\')\"',
|
||||
},
|
||||
'listrequests':{
|
||||
'url_rewrite': 'Parameters passed to str.replace(), in order to create the r= part of bitcoin: URIs. Example: \"(\'file:///var/www/\',\'https://electrum.org/\')\"',
|
||||
|
|
|
@ -169,7 +169,7 @@ class BasePlugin:
|
|||
def init_qt(self, gui): pass
|
||||
|
||||
@hook
|
||||
def load_wallet(self, wallet): pass
|
||||
def load_wallet(self, wallet, window): pass
|
||||
|
||||
@hook
|
||||
def close_wallet(self): pass
|
||||
|
|
|
@ -73,7 +73,7 @@ class Plugin(BasePlugin):
|
|||
return True
|
||||
|
||||
@hook
|
||||
def load_wallet(self, wallet):
|
||||
def load_wallet(self, wallet, window):
|
||||
if self.btchip_is_connected():
|
||||
if not self.wallet.check_proper_device():
|
||||
QMessageBox.information(self.window, _('Error'), _("This wallet does not match your BTChip device"), _('OK'))
|
||||
|
|
|
@ -95,7 +95,7 @@ class Plugin(BasePlugin):
|
|||
return self.wallet.wallet_type in ['2of2', '2of3']
|
||||
|
||||
@hook
|
||||
def load_wallet(self, wallet):
|
||||
def load_wallet(self, wallet, window):
|
||||
self.wallet = wallet
|
||||
if not self.is_available():
|
||||
return
|
||||
|
|
|
@ -259,7 +259,7 @@ class Plugin(BasePlugin):
|
|||
return quote_text
|
||||
|
||||
@hook
|
||||
def load_wallet(self, wallet):
|
||||
def load_wallet(self, wallet, window):
|
||||
tx_list = {}
|
||||
for item in self.wallet.get_history(self.wallet.storage.get("current_account", None)):
|
||||
tx_hash, conf, value, timestamp, balance = item
|
||||
|
|
|
@ -51,7 +51,7 @@ class Plugin(BasePlugin):
|
|||
self.window.connect(self.window, SIGNAL('labels:pulled'), self.on_pulled)
|
||||
|
||||
@hook
|
||||
def load_wallet(self, wallet):
|
||||
def load_wallet(self, wallet, window):
|
||||
self.wallet = wallet
|
||||
|
||||
self.wallet_nonce = self.wallet.storage.get("wallet_nonce")
|
||||
|
|
|
@ -46,6 +46,7 @@ class Plugin(BasePlugin):
|
|||
self._is_available = self._init()
|
||||
self._requires_settings = True
|
||||
self.wallet = None
|
||||
self.handler = None
|
||||
|
||||
def constructor(self, s):
|
||||
return TrezorWallet(s)
|
||||
|
@ -82,9 +83,6 @@ class Plugin(BasePlugin):
|
|||
return False
|
||||
return True
|
||||
|
||||
@hook
|
||||
def add_plugin(self, wallet):
|
||||
wallet.plugin = self
|
||||
|
||||
@hook
|
||||
def close_wallet(self):
|
||||
|
@ -94,17 +92,19 @@ class Plugin(BasePlugin):
|
|||
self.wallet.client.transport.close()
|
||||
self.wallet = None
|
||||
|
||||
@hook
|
||||
def init_qt_app(self, app):
|
||||
self.handler = TrezorQtHandler(app)
|
||||
|
||||
@hook
|
||||
def init_cmdline(self):
|
||||
self.handler = TrezorCmdLineHandler()
|
||||
|
||||
@hook
|
||||
def load_wallet(self, wallet):
|
||||
def load_wallet(self, wallet, window):
|
||||
self.wallet = wallet
|
||||
self.window = window
|
||||
self.wallet.plugin = self
|
||||
|
||||
if self.handler is None:
|
||||
self.handler = TrezorQtHandler(self.window.app)
|
||||
|
||||
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'))
|
||||
|
@ -186,7 +186,6 @@ class TrezorWallet(BIP32_HD_Wallet):
|
|||
self.mpk = None
|
||||
self.device_checked = False
|
||||
self.force_watching_only = False
|
||||
always_hook('add_plugin', self)
|
||||
|
||||
def get_action(self):
|
||||
if not self.accounts:
|
||||
|
|
|
@ -322,7 +322,7 @@ class Plugin(BasePlugin):
|
|||
self.is_billing = False
|
||||
|
||||
@hook
|
||||
def load_wallet(self, wallet):
|
||||
def load_wallet(self, wallet, window):
|
||||
self.trustedcoin_button = StatusBarButton( QIcon(":icons/trustedcoin.png"), _("Network"), self.settings_dialog)
|
||||
self.window.statusBar().addPermanentWidget(self.trustedcoin_button)
|
||||
self.xpub = self.wallet.master_public_keys.get('x1/')
|
||||
|
|
Loading…
Reference in New Issue