From 31d57a04fefe5148b662164912ce3dae7f9225c8 Mon Sep 17 00:00:00 2001 From: Pierre Pronchery Date: Sat, 20 Jul 2013 05:17:16 +0200 Subject: [PATCH] Logging out is now supported in embedded mode (but disabled by default) --- po/fr.po | 50 +++++++++++++++++++++++++------------------------- src/helper.c | 4 ---- src/panel.c | 11 +++++++---- tools/helper.c | 15 ++++++++++++--- tools/notify.c | 2 -- tools/test.c | 2 -- 6 files changed, 44 insertions(+), 40 deletions(-) diff --git a/po/fr.po b/po/fr.po index 1dee7a9..e7f8f0e 100644 --- a/po/fr.po +++ b/po/fr.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Panel 0.2.18\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-07-20 05:00+0200\n" +"POT-Creation-Date: 2013-07-20 05:17+0200\n" "PO-Revision-Date: 2010-04-22 12:45+0200\n" "Last-Translator: Pierre Pronchery \n" "Language-Team: French\n" @@ -25,7 +25,7 @@ msgstr "Afficher le niveau de batterie" msgid "Unknown" msgstr "Inconnu" -#: ../src/applets/battery.c:271 ../src/panel.c:460 ../src/panel.c:465 +#: ../src/applets/battery.c:271 ../src/panel.c:463 ../src/panel.c:468 #: ../src/run.c:216 ../src/run.c:222 msgid "Error" msgstr "Erreur" @@ -120,8 +120,8 @@ msgstr "Verrouiller l'écran" msgid "logout: Logging out is disabled" msgstr "logout: Se déconnecter est désactivé" -#: ../src/applets/logout.c:79 ../src/helper.c:189 ../src/helper.c:201 -#: ../src/helper.c:210 +#: ../src/applets/logout.c:79 ../src/helper.c:186 ../src/helper.c:198 +#: ../src/helper.c:207 msgid "Logout" msgstr "Déconnexion" @@ -221,15 +221,15 @@ msgstr "Maximiser" msgid "USB networking device connected" msgstr "Périphérique réseau USB connecté" -#: ../src/helper.c:111 +#: ../src/helper.c:109 msgid "Panel for the DeforaOS desktop" msgstr "Panel pour l'environnement DeforaOS" -#: ../src/helper.c:119 +#: ../src/helper.c:117 msgid "translator-credits" msgstr "Pierre Pronchery " -#: ../src/helper.c:175 +#: ../src/helper.c:172 msgid "" "This will log you out of the current session, therefore closing any " "application currently opened and losing any unsaved data.\n" @@ -240,7 +240,7 @@ msgstr "" "sauvegardées.\n" "Voulez-vous continuer?" -#: ../src/helper.c:332 +#: ../src/helper.c:328 msgid "" "This will shutdown your device, therefore closing any application currently " "opened and losing any unsaved data.\n" @@ -251,7 +251,7 @@ msgstr "" "sauvegardées.\n" "Voulez-vous continuer?" -#: ../src/helper.c:337 +#: ../src/helper.c:333 msgid "" "This will shutdown your computer, therefore closing any application " "currently opened and losing any unsaved data.\n" @@ -262,11 +262,11 @@ msgstr "" "sauvegardées.\n" "Voulez-vous continuer?" -#: ../src/helper.c:352 ../src/helper.c:364 ../src/helper.c:373 +#: ../src/helper.c:348 ../src/helper.c:360 ../src/helper.c:369 msgid "Shutdown" msgstr "Arrêter" -#: ../src/helper.c:363 +#: ../src/helper.c:359 msgid "Restart" msgstr "Redémarrer" @@ -284,51 +284,51 @@ msgstr "" " -x\tIcônes de la taille de menus\n" " -m\tMoniteur à utiliser (par défaut : 0)\n" -#: ../src/panel.c:113 +#: ../src/panel.c:111 msgid "Large" msgstr "Grande" -#: ../src/panel.c:115 +#: ../src/panel.c:113 msgid "Small" msgstr "Petite" -#: ../src/panel.c:117 +#: ../src/panel.c:115 msgid "Smaller" msgstr "Très petite" -#: ../src/panel.c:588 +#: ../src/panel.c:591 msgid "Panel preferences" msgstr "Préférences du Panel" -#: ../src/panel.c:604 +#: ../src/panel.c:607 msgid "General" msgstr "Général" -#: ../src/panel.c:608 +#: ../src/panel.c:611 msgid "Applets" msgstr "Greffons" -#: ../src/panel.c:637 +#: ../src/panel.c:640 msgid "Applets:" msgstr "Greffons :" -#: ../src/panel.c:717 +#: ../src/panel.c:720 msgid "Top panel:" msgstr "Panneau supérieur :" -#: ../src/panel.c:723 ../src/panel.c:727 ../src/panel.c:758 ../src/panel.c:762 +#: ../src/panel.c:726 ../src/panel.c:730 ../src/panel.c:761 ../src/panel.c:765 msgid "Default" msgstr "Par défaut" -#: ../src/panel.c:752 +#: ../src/panel.c:755 msgid "Bottom panel:" msgstr "Panneau inférieur :" -#: ../src/panel.c:859 +#: ../src/panel.c:862 msgid "Accept focus" msgstr "Autoriser le focus" -#: ../src/panel.c:863 +#: ../src/panel.c:866 msgid "Keep above other windows" msgstr "Conserver au dessus des fenêtres" @@ -384,7 +384,7 @@ msgstr "Usage: run\n" msgid "Invalid panel size" msgstr "Taille invalide pour le panel" -#: ../tools/notify.c:168 +#: ../tools/notify.c:166 msgid "" "Usage: panel-notify [-L|-S|-X|-x][-t timeout] applet...\n" " panel-notify -l\n" @@ -404,7 +404,7 @@ msgstr "" " -t\tDurée d'affichage (0 : illimité)\n" " -l\tLister les applets disponibles\n" -#: ../tools/test.c:139 +#: ../tools/test.c:137 msgid "" "Usage: panel-test [-L|-S|-X|-x] applet...\n" " panel-test -l\n" diff --git a/src/helper.c b/src/helper.c index 363fda6..b1e3d43 100644 --- a/src/helper.c +++ b/src/helper.c @@ -42,9 +42,7 @@ static int _panel_helper_config_set(Panel * panel, char const * section, static int _panel_helper_error(Panel * panel, char const * message, int ret); static void _panel_helper_about_dialog(Panel * panel); static int _panel_helper_lock(Panel * panel); -#ifndef EMBEDDED static void _panel_helper_logout_dialog(Panel * panel); -#endif #ifndef HELPER_POSITION_MENU_WIDGET static void _panel_helper_position_menu(Panel * panel, GtkMenu * menu, gint * x, gint * y, gboolean * push_in, PanelPosition position); @@ -165,7 +163,6 @@ static gboolean _lock_on_idle(gpointer data) } -#ifndef EMBEDDED /* panel_helper_logout_dialog */ static gboolean _logout_dialog_on_closex(gpointer data); static void _logout_dialog_on_response(GtkWidget * widget, gint response); @@ -235,7 +232,6 @@ static void _logout_dialog_on_response(GtkWidget * widget, gint response) #endif } } -#endif #ifndef HELPER_POSITION_MENU_WIDGET diff --git a/src/panel.c b/src/panel.c index ebc5b36..a03f13a 100644 --- a/src/panel.c +++ b/src/panel.c @@ -88,9 +88,7 @@ struct _Panel /* dialogs */ GtkWidget * ab_window; -#ifndef EMBEDDED GtkWidget * lo_window; -#endif GtkWidget * sh_window; }; @@ -171,10 +169,15 @@ Panel * panel_new(PanelPrefs const * prefs) panel->top_helper.about_dialog = _panel_helper_about_dialog; panel->top_helper.lock = _panel_helper_lock; #ifndef EMBEDDED - panel->top_helper.logout_dialog = _panel_helper_logout_dialog; + if((p = config_get(panel->config, NULL, "logout")) == NULL + || strtol(p, NULL, 0) != 0) #else - panel->top_helper.logout_dialog = NULL; + if((p = config_get(panel->config, NULL, "logout")) != NULL + && strtol(p, NULL, 0) != 0) #endif + panel->top_helper.logout_dialog = _panel_helper_logout_dialog; + else + panel->top_helper.logout_dialog = NULL; panel->top_helper.position_menu = _panel_helper_position_menu_top; panel->top_helper.preferences_dialog = _panel_helper_preferences_dialog; panel->top_helper.rotate_screen = _panel_helper_rotate_screen; diff --git a/tools/helper.c b/tools/helper.c index 58f765b..952fda5 100644 --- a/tools/helper.c +++ b/tools/helper.c @@ -53,9 +53,7 @@ struct _Panel /* dialogs */ GtkWidget * ab_window; -#ifndef EMBEDDED GtkWidget * lo_window; -#endif GtkWidget * sh_window; }; @@ -179,6 +177,8 @@ static int _error(char const * message, int ret) static void _helper_init(PanelAppletHelper * helper, Panel * panel, PanelAppletType type, GtkIconSize iconsize) { + char const * p; + memset(helper, 0, sizeof(*helper)); helper->panel = panel; helper->type = type; @@ -188,7 +188,16 @@ static void _helper_init(PanelAppletHelper * helper, Panel * panel, helper->error = _panel_helper_error; helper->about_dialog = _panel_helper_about_dialog; helper->lock = _panel_helper_lock; - helper->logout_dialog = _panel_helper_logout_dialog; +#ifndef EMBEDDED + if((p = config_get(panel->config, NULL, "logout")) == NULL + || strtol(p, NULL, 0) != 0) +#else + if((p = config_get(panel->config, NULL, "logout")) != NULL + && strtol(p, NULL, 0) != 0) +#endif + helper->logout_dialog = _panel_helper_logout_dialog; + else + helper->logout_dialog = NULL; helper->position_menu = _panel_helper_position_menu_widget; helper->preferences_dialog = _panel_helper_preferences_dialog; helper->rotate_screen = _panel_helper_rotate_screen; diff --git a/tools/notify.c b/tools/notify.c index 029c64c..648b9c1 100644 --- a/tools/notify.c +++ b/tools/notify.c @@ -137,9 +137,7 @@ static int _notify(GtkIconSize iconsize, int timeout, char * applets[]) panel.root_width = rect.width; panel.source = 0; panel.ab_window = NULL; -#ifndef EMBEDDED panel.lo_window = NULL; -#endif panel.sh_window = NULL; gtk_main(); if(panel.timeout != 0) diff --git a/tools/test.c b/tools/test.c index 59c5594..34f2074 100644 --- a/tools/test.c +++ b/tools/test.c @@ -122,9 +122,7 @@ static int _test(GtkIconSize iconsize, char * applets[]) panel.root_width = rect.width; panel.source = 0; panel.ab_window = NULL; -#ifndef EMBEDDED panel.lo_window = NULL; -#endif panel.sh_window = NULL; gtk_main(); if(panel.source != 0)