URI: 
       tfix #1057 - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit 8251c5b6d9cca735e91770433c7082013f73135c
   DIR parent 50fed3dce59196aeee29e63c737f25357b0a5a01
  HTML Author: ThomasV <thomasv@gitorious>
       Date:   Mon, 20 Apr 2015 10:33:32 +0200
       
       fix #1057
       
       Diffstat:
         M gui/qt/__init__.py                  |       6 +++++-
         M gui/qt/installwizard.py             |       9 ++-------
         M gui/qt/main_window.py               |      21 +++++++++++++++------
       
       3 files changed, 22 insertions(+), 14 deletions(-)
       ---
   DIR diff --git a/gui/qt/__init__.py b/gui/qt/__init__.py
       t@@ -160,8 +160,12 @@ class ElectrumGui:
                        return
                wizard = installwizard.InstallWizard(self.config, self.network, storage)
                wizard.show()
       +        if action == 'new':
       +            action, wallet_type = wizard.restore_or_create()
       +        else:
       +            wallet_type = None
                try:
       -            wallet = wizard.run(action)
       +            wallet = wizard.run(action, wallet_type)
                except BaseException as e:
                    traceback.print_exc(file=sys.stdout)
                    QMessageBox.information(None, _('Error'), str(e), _('OK'))
   DIR diff --git a/gui/qt/installwizard.py b/gui/qt/installwizard.py
       t@@ -314,13 +314,9 @@ class InstallWizard(QDialog):
                return run_password_dialog(self, None, self)[2]
        
        
       +    def run(self, action, wallet_type):
        
       -
       -
       -    def run(self, action):
       -
       -        if action == 'new':
       -            action, wallet_type = self.restore_or_create()
       +        if action in ['create', 'restore']:
                    if wallet_type == 'multisig':
                        wallet_type = self.choice(_("Multi Signature Wallet"), 'Select wallet type', [('2of2', _("2 of 2")),('2of3',_("2 of 3"))])
                        if not wallet_type:
       t@@ -332,7 +328,6 @@ class InstallWizard(QDialog):
                            return
                    elif wallet_type == 'twofactor':
                        wallet_type = '2fa'
       -
                    if action == 'create':
                        self.storage.put('wallet_type', wallet_type, False)
        
   DIR diff --git a/gui/qt/main_window.py b/gui/qt/main_window.py
       t@@ -274,11 +274,12 @@ class ElectrumWindow(QMainWindow):
                # run wizard
                if action is not None:
                    wallet = self.gui_object.run_wizard(storage, action)
       -            if not wallet:
       -                self.show()
       -                return
                else:
                    wallet.start_threads(self.network)
       +        # keep current wallet
       +        if not wallet:
       +            self.show()
       +            return
                # close current wallet
                self.close_wallet()
                # load new wallet in gui
       t@@ -329,11 +330,19 @@ class ElectrumWindow(QMainWindow):
        
                self.hide()
                wizard = installwizard.InstallWizard(self.config, self.network, storage)
       -        wallet = wizard.run('new')
       +        action, wallet_type = wizard.restore_or_create()
       +        if not action:
       +            self.show()
       +            return
       +        # close current wallet, but keep a reference to it
       +        self.close_wallet()
       +        wallet = wizard.run(action, wallet_type)
                if wallet:
       -            if self.wallet:
       -                self.close_wallet()
                    self.load_wallet(wallet)
       +        else:
       +            self.wallet.start_threads()
       +            self.load_wallet(self.wallet)
       +
                self.show()