[anjuta] Keep using loaded plugin even if they are marked as disabled



commit 656f754047f02f63e8954bbf3ea2b4bc540d7d61
Author: Sébastien Granjoux <seb sfo free fr>
Date:   Sat Jun 22 11:32:32 2013 +0200

    Keep using loaded plugin even if they are marked as disabled

 libanjuta/anjuta-plugin-manager.c |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)
---
diff --git a/libanjuta/anjuta-plugin-manager.c b/libanjuta/anjuta-plugin-manager.c
index ad40ecf..71a392b 100644
--- a/libanjuta/anjuta-plugin-manager.c
+++ b/libanjuta/anjuta-plugin-manager.c
@@ -1485,7 +1485,9 @@ anjuta_plugin_manager_get_plugin (AnjutaPluginManager *plugin_manager,
        {
                GList *next = g_list_next (node);
 
-               if (g_hash_table_lookup (priv->disable_plugins, node->data) != NULL)
+               if ((g_hash_table_lookup (priv->disable_plugins, node->data) != NULL) &&
+                   (g_hash_table_lookup (priv->activated_plugins, node->data) == NULL))
+                   
                {
                        valid_plugins = g_list_delete_link (valid_plugins, node);
                }
@@ -1701,7 +1703,8 @@ anjuta_plugin_manager_list_query (AnjutaPluginManager *plugin_manager,
                while (available)
                {
                        AnjutaPluginHandle *plugin = available->data;
-                       if (g_hash_table_lookup (plugin_manager->priv->disable_plugins, plugin) == NULL)
+                       if ((g_hash_table_lookup (plugin_manager->priv->disable_plugins, plugin) == NULL) ||
+                           (g_hash_table_lookup (plugin_manager->priv->activated_plugins, plugin) != NULL))
                                selected_plugins = g_list_prepend (selected_plugins, plugin);
                        available = g_list_next (available);
                }
@@ -1724,7 +1727,8 @@ anjuta_plugin_manager_list_query (AnjutaPluginManager *plugin_manager,
                AnjutaPluginDescription *desc =
                        anjuta_plugin_handle_get_description (plugin);
                
-               if (g_hash_table_lookup (plugin_manager->priv->disable_plugins, plugin) != NULL)
+               if ((g_hash_table_lookup (plugin_manager->priv->disable_plugins, plugin) != NULL) &&
+                   (g_hash_table_lookup (plugin_manager->priv->activated_plugins, plugin) == NULL))
                        continue;
 
                while (s_node)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]