diff --git a/gui/qt/installwizard.py b/gui/qt/installwizard.py index e751233e..c4be82c9 100644 --- a/gui/qt/installwizard.py +++ b/gui/qt/installwizard.py @@ -64,11 +64,11 @@ class CosignWidget(QWidget): # WindowModalDialog must come first as it overrides show_error -class InstallWizard(WindowModalDialog, WizardBase): +class InstallWizard(QDialog, MessageBoxMixin, WizardBase): def __init__(self, config, app, plugins): - title = 'Electrum - ' + _('Install Wizard') - WindowModalDialog.__init__(self, None, title=title) + QDialog.__init__(self, None) + self.setWindowTitle('Electrum - ' + _('Install Wizard')) self.app = app self.config = config # Set for base base class diff --git a/lib/plugins.py b/lib/plugins.py index b528668a..9d806b52 100644 --- a/lib/plugins.py +++ b/lib/plugins.py @@ -358,6 +358,9 @@ class DeviceMgr(PrintError): client = self.client_lookup(wallet_id) if client: + # An unpaired client might have another wallet's handler + # from a prior scan. Replace to fix dialog parenting. + client.handler = wallet.handler return client for device in devices: @@ -374,8 +377,7 @@ class DeviceMgr(PrintError): if info: client = self.client_lookup(info.device.id_) if client and not client.features.bootloader_mode: - # An unpaired client might have another wallet's handler - # from a prior scan. Replace to fix dialog parenting. + # See comment above for same code client.handler = wallet.handler # This will trigger a PIN/passphrase entry request client_first_address = client.first_address(derivation)