[gnome-panel] panel: Do not show "Edit Menus" in menubar context menu if locked down



commit 58ab84b9677c1e74a2791f891dda0cae94e1fd9e
Author: Vincent Untz <vuntz gnome org>
Date:   Tue Feb 22 23:09:16 2011 +0100

    panel: Do not show "Edit Menus" in menubar context menu if locked down
    
    Same for PanelMenuButton.

 gnome-panel/panel-lockdown.c    |    8 ++++++++
 gnome-panel/panel-lockdown.h    |    1 +
 gnome-panel/panel-menu-bar.c    |    2 +-
 gnome-panel/panel-menu-button.c |    3 ++-
 4 files changed, 12 insertions(+), 2 deletions(-)
---
diff --git a/gnome-panel/panel-lockdown.c b/gnome-panel/panel-lockdown.c
index 5b63ed2..7dbfa7f 100644
--- a/gnome-panel/panel-lockdown.c
+++ b/gnome-panel/panel-lockdown.c
@@ -326,6 +326,14 @@ panel_lockdown_get_locked_down (void)
 }
 
 gboolean
+panel_lockdown_get_not_locked_down (void)
+{
+        g_assert (panel_lockdown.initialized != FALSE);
+
+        return !panel_lockdown.locked_down;
+}
+
+gboolean
 panel_lockdown_get_disable_command_line (void)
 {
         g_assert (panel_lockdown.initialized != FALSE);
diff --git a/gnome-panel/panel-lockdown.h b/gnome-panel/panel-lockdown.h
index 8c843b1..dbca5f1 100644
--- a/gnome-panel/panel-lockdown.h
+++ b/gnome-panel/panel-lockdown.h
@@ -34,6 +34,7 @@ void panel_lockdown_init     (void);
 void panel_lockdown_finalize (void);
 
 gboolean panel_lockdown_get_locked_down          (void);
+gboolean panel_lockdown_get_not_locked_down      (void);
 gboolean panel_lockdown_get_disable_command_line (void);
 gboolean panel_lockdown_get_disable_lock_screen  (void);
 gboolean panel_lockdown_get_disable_log_out      (void);
diff --git a/gnome-panel/panel-menu-bar.c b/gnome-panel/panel-menu-bar.c
index 1ea25e6..4974873 100644
--- a/gnome-panel/panel-menu-bar.c
+++ b/gnome-panel/panel-menu-bar.c
@@ -428,7 +428,7 @@ panel_menu_bar_load (PanelWidget *panel,
 					   "edit",
 					   NULL,
 					   _("_Edit Menus"),
-					   NULL);
+					   panel_lockdown_get_not_locked_down);
 	}
 
 	panel_applet_add_callback (menubar->priv->info,
diff --git a/gnome-panel/panel-menu-button.c b/gnome-panel/panel-menu-button.c
index 473814a..c7b81cd 100644
--- a/gnome-panel/panel-menu-button.c
+++ b/gnome-panel/panel-menu-button.c
@@ -680,7 +680,8 @@ panel_menu_button_load (const char  *menu_path,
         if (panel_is_program_in_path ("alacarte") ||
 	    panel_is_program_in_path ("gmenu-simple-editor"))
 		panel_applet_add_callback (info, "edit", NULL,
-					   _("_Edit Menus"), NULL);
+					   _("_Edit Menus"),
+					   panel_lockdown_get_not_locked_down);
 
 	panel_widget_set_applet_expandable (panel, GTK_WIDGET (button), FALSE, TRUE);
 	panel_widget_set_applet_size_constrained (panel, GTK_WIDGET (button), TRUE);



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