fix #2562: show error message if hardware library is missing
This commit is contained in:
parent
c79655d26a
commit
46b8436693
|
@ -392,6 +392,8 @@ class DeviceMgr(ThreadJob, PrintError):
|
|||
|
||||
def client_for_keystore(self, plugin, handler, keystore, force_pair):
|
||||
self.print_error("getting client for keystore")
|
||||
if handler is None:
|
||||
raise BaseException(_("Handler not found for") + ' ' + plugin.name + '\n' + _("A library is probably missing."))
|
||||
handler.update_status(False)
|
||||
devices = self.scan_devices()
|
||||
xpub = keystore.xpub
|
||||
|
|
|
@ -41,7 +41,7 @@ class HW_PluginBase(BasePlugin):
|
|||
self.keystore_class.plugin = self
|
||||
|
||||
def is_enabled(self):
|
||||
return self.libraries_available
|
||||
return True
|
||||
|
||||
def device_manager(self):
|
||||
return self.parent.device_manager
|
||||
|
|
|
@ -182,6 +182,12 @@ class QtPluginBase(object):
|
|||
for keystore in wallet.get_keystores():
|
||||
if not isinstance(keystore, self.keystore_class):
|
||||
continue
|
||||
if not self.libraries_available:
|
||||
window.show_error(
|
||||
_("Cannot find python library for") + " '%s'.\n" % self.name \
|
||||
+ _("Make sure you install it with python3")
|
||||
)
|
||||
return
|
||||
tooltip = self.device + '\n' + (keystore.label or 'unnamed')
|
||||
cb = partial(self.show_settings_dialog, window, keystore)
|
||||
button = StatusBarButton(QIcon(self.icon_unpaired), tooltip, cb)
|
||||
|
|
Loading…
Reference in New Issue