URI: 
       tkivy: open last wallet - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit 80b1b2716c0780a42a2c982c0d2f626ae82476cc
   DIR parent d3d0e3bacb3f779647e8f300550f22024b9c83fd
  HTML Author: ThomasV <thomasv@electrum.org>
       Date:   Tue,  8 Mar 2016 11:10:04 +0100
       
       kivy: open last wallet
       
       Diffstat:
         M gui/kivy/__init__.py                |       2 ++
         M gui/qt/__init__.py                  |      12 +++---------
         M lib/simple_config.py                |      11 +++++++++++
       
       3 files changed, 16 insertions(+), 9 deletions(-)
       ---
   DIR diff --git a/gui/kivy/__init__.py b/gui/kivy/__init__.py
       t@@ -50,8 +50,10 @@ class ElectrumGui:
                self.plugins = plugins
        
            def main(self):
       +        self.config.open_last_wallet()
                w = ElectrumWindow(config=self.config,
                                   network=self.network,
                                   plugins = self.plugins,
                                   gui_object=self)
                w.run()
       +        self.config.save_last_wallet(w.wallet)
   DIR diff --git a/gui/qt/__init__.py b/gui/qt/__init__.py
       t@@ -174,19 +174,13 @@ class ElectrumGui:
                self.windows.remove(window)
                self.build_tray_menu()
                # save wallet path of last open window
       -        if self.config.get('wallet_path') is None and not self.windows:
       -            path = window.wallet.storage.path
       -            self.config.set_key('gui_last_wallet', path)
       +        if not self.windows:
       +            self.config.save_last_wallet(window.wallet)
                run_hook('on_close_window', window)
        
            def main(self):
                self.timer.start()
       -        # open last wallet
       -        if self.config.get('wallet_path') is None:
       -            last_wallet = self.config.get('gui_last_wallet')
       -            if last_wallet is not None and os.path.exists(last_wallet):
       -                self.config.cmdline_options['default_wallet_path'] = last_wallet
       -
       +        self.config.open_last_wallet()
                if not self.start_new_window(self.config.get_wallet_path(),
                                             self.config.get('url')):
                    return
   DIR diff --git a/lib/simple_config.py b/lib/simple_config.py
       t@@ -174,6 +174,17 @@ class SimpleConfig(PrintError):
            def get_session_timeout(self):
                return self.get('session_timeout', 300)
        
       +    def open_last_wallet(self):
       +        if self.get('wallet_path') is None:
       +            last_wallet = self.get('gui_last_wallet')
       +            if last_wallet is not None and os.path.exists(last_wallet):
       +                self.cmdline_options['default_wallet_path'] = last_wallet
       +
       +    def save_last_wallet(self, wallet):
       +        if self.get('wallet_path') is None:
       +            path = wallet.storage.path
       +            self.set_key('gui_last_wallet', path)
       +
        
        def read_system_config(path=SYSTEM_CONFIG_PATH):
            """Parse and return the system config settings in /etc/electrum.conf."""