static gboolean screensaver_enabled (void) { if (panel_lockdown_get_disable_lock_screen ()) return FALSE; return panel_lock_screen_action_available ("lock"); }
static gboolean screensaver_properties_enabled (void) { if (panel_lockdown_get_locked_down () || panel_lockdown_get_disable_lock_screen ()) return FALSE; return panel_lock_screen_action_available ("prefs"); }
static void panel_menu_items_lock_logout_separator_notified (PanelLockdown *lockdown, gpointer user_data) { GtkWidget *separator = user_data; if (!panel_lockdown_get_disable_lock_screen (lockdown) || !panel_lockdown_get_disable_switch_user (lockdown) || !panel_lockdown_get_disable_log_out (lockdown)) gtk_widget_show (separator); else gtk_widget_hide (separator); }
gboolean panel_lock_screen_action_available (const char *action) { char *command; gboolean enabled = FALSE; g_return_val_if_fail (action != NULL, FALSE); if (strcmp (action, "prefs") != 0 && panel_lockdown_get_disable_lock_screen ()) return FALSE; command = panel_lock_screen_action_get_command (action); if (command) enabled = TRUE; g_free (command); return enabled; }