aboutsummaryrefslogtreecommitdiffstats
path: root/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'plugins')
-rw-r--r--plugins/plugin-manager/ChangeLog9
-rw-r--r--plugins/plugin-manager/org-gnome-plugin-manager.eplug.xml3
-rw-r--r--plugins/plugin-manager/plugin-manager.c14
3 files changed, 22 insertions, 4 deletions
diff --git a/plugins/plugin-manager/ChangeLog b/plugins/plugin-manager/ChangeLog
index 868fe13f03..4472797fc9 100644
--- a/plugins/plugin-manager/ChangeLog
+++ b/plugins/plugin-manager/ChangeLog
@@ -1,3 +1,12 @@
+2008-03-19 Sankar P <psankar@novell.com>
+
+ ** Fix for bug #496839
+
+ * org-gnome-plugin-manager.eplug.xml:
+ * plugin-manager.c: (org_gnome_plugin_manager_manage):
+ - Do not show all plugins in plugin-manager.
+ Hide the core system plugins.
+
2008-01-11 Milan Crha <mcrha@redhat.com>
** Fix for bug #502303
diff --git a/plugins/plugin-manager/org-gnome-plugin-manager.eplug.xml b/plugins/plugin-manager/org-gnome-plugin-manager.eplug.xml
index aa0a4894e5..eae643e720 100644
--- a/plugins/plugin-manager/org-gnome-plugin-manager.eplug.xml
+++ b/plugins/plugin-manager/org-gnome-plugin-manager.eplug.xml
@@ -4,7 +4,8 @@
type="shlib"
id="org.gnome.evolution.plugin.manager"
location="@PLUGINDIR@/liborg-gnome-plugin-manager@SOEXT@"
- _name="Plugin Manager">
+ _name="Plugin Manager"
+ system_plugin="yes">
<_description>A plugin for managing which plugins are enabled or disabled.</_description>
<author name="Michael Zucchi" email="notzed@ximian.com"/>
<hook class="org.gnome.evolution.shell.bonobomenu:1.0">
diff --git a/plugins/plugin-manager/plugin-manager.c b/plugins/plugin-manager/plugin-manager.c
index 3fadd007dc..823ad98d85 100644
--- a/plugins/plugin-manager/plugin-manager.c
+++ b/plugins/plugin-manager/plugin-manager.c
@@ -288,9 +288,16 @@ org_gnome_plugin_manager_manage (void *ep, ESMenuTargetShell *t)
GtkTreeIter iter;
GtkWidget *cfg_widget;
- /* hide ourselves always */
- if (!strcmp (ep->id, "org.gnome.evolution.plugin.manager"))
- continue;
+ if (!g_getenv ("EVO_SHOW_ALL_PLUGINS")) {
+ /* hide ourselves always */
+ if (ep->flags & E_PLUGIN_FLAGS_SYSTEM_PLUGIN)
+ continue;
+
+ } else {
+ /* Never ever show plugin-manager. User may disable it */
+ if (!strcmp (ep->id, "org.gnome.evolution.plugin.manager"))
+ continue;
+ }
cfg_widget = e_plugin_get_configure_widget (ep);
if (!cfg_widget) {
@@ -307,6 +314,7 @@ org_gnome_plugin_manager_manage (void *ep, ESMenuTargetShell *t)
COL_PLUGIN_DATA, ep,
COL_PLUGIN_CFG_WIDGET, cfg_widget,
-1);
+
}
/* setup the treeview */