← Back to team overview

gtg team mailing list archive

[Merge] lp:~mkevac/gtg/578444 into lp:gtg

 

Marko Kevac has proposed merging lp:~mkevac/gtg/578444 into lp:gtg.

Requested reviews:
  Gtg developers (gtg)
Related bugs:
  #578444 Plugin enabled list is not saved on reboot
  https://bugs.launchpad.net/bugs/578444


Fixes for bug 578444
-- 
https://code.launchpad.net/~mkevac/gtg/578444/+merge/26475
Your team Gtg developers is requested to review the proposed merge of lp:~mkevac/gtg/578444 into lp:gtg.
=== modified file 'GTG/viewmanager/manager.py'
--- GTG/viewmanager/manager.py	2010-05-20 09:18:47 +0000
+++ GTG/viewmanager/manager.py	2010-06-01 08:40:47 +0000
@@ -41,6 +41,7 @@
     ############## init #####################################################
 
     def __init__(self, req, config):
+        self.config_obj = config
         self.config = config.conf_dict
         self.task_config = config.task_conf_dict
         self.req = req
@@ -188,7 +189,8 @@
 
     def show_preferences(self, config_priv, sender=None):
         if not self.preferences:
-            self.preferences = PreferencesDialog(self.pengine, self.p_apis)
+            self.preferences = PreferencesDialog(self.pengine, self.p_apis, \
+                    self.config_obj)
         self.preferences.activate(config_priv)
         
     def ask_delete_tasks(self, tids):

=== modified file 'GTG/viewmanager/preferences.py'
--- GTG/viewmanager/preferences.py	2010-04-29 09:23:34 +0000
+++ GTG/viewmanager/preferences.py	2010-06-01 08:40:47 +0000
@@ -98,8 +98,10 @@
     __AUTOSTART_DIRECTORY = os.path.join(xdg_config_home, "autostart")
     __AUTOSTART_FILE = "gtg.desktop"
 
-    def __init__(self, pengine, p_apis):
+    def __init__(self, pengine, p_apis, config_obj):
         """Constructor."""
+        self.config_obj = config_obj
+        self.config = self.config_obj.conf_dict
         self.builder = gtk.Builder() 
         self.builder.add_from_file(ViewConfig.PREFERENCES_GLADE_FILE)
         # store references to some objects
@@ -260,6 +262,16 @@
 
     def on_close(self, widget, data = None):
         """Close the preferences dialog."""
+
+        if len(self.pengine.plugins) > 0:
+            self.config["plugins"] = {}
+            self.config["plugins"]["disabled"] = \
+              self.pengine.disabled_plugins().keys()
+            self.config["plugins"]["enabled"] = \
+              self.pengine.enabled_plugins().keys()
+
+        self.config_obj.save_config()
+
         self.dialog.hide()
         return True
 


Follow ups