← Back to team overview

lightdm-gtk-greeter-team team mailing list archive

[Merge] lp:~lightdm-gtk-greeter-team/lightdm-gtk-greeter/show_indicators_proposal into lp:lightdm-gtk-greeter

 

Sean Davis has proposed merging lp:~lightdm-gtk-greeter-team/lightdm-gtk-greeter/show_indicators_proposal into lp:lightdm-gtk-greeter.

Requested reviews:
  LightDM Gtk+ Greeter Development Team (lightdm-gtk-greeter-team)

For more details, see:
https://code.launchpad.net/~lightdm-gtk-greeter-team/lightdm-gtk-greeter/show_indicators_proposal/+merge/208580

Deprecate "show-indicators", replace with "indicators" to improve upgrade path of configuration files pre-1.8 series.
-- 
https://code.launchpad.net/~lightdm-gtk-greeter-team/lightdm-gtk-greeter/show_indicators_proposal/+merge/208580
Your team LightDM Gtk+ Greeter Development Team is requested to review the proposed merge of lp:~lightdm-gtk-greeter-team/lightdm-gtk-greeter/show_indicators_proposal into lp:lightdm-gtk-greeter.
=== modified file 'src/lightdm-gtk-greeter.c'
--- src/lightdm-gtk-greeter.c	2014-02-26 01:26:13 +0000
+++ src/lightdm-gtk-greeter.c	2014-02-27 11:54:33 +0000
@@ -379,6 +379,7 @@
     GHashTableIter iter;
     gpointer iter_value;
     gboolean inited = FALSE;
+    gboolean fallback = FALSE;
 
 #ifdef START_INDICATOR_SERVICES
     GError *error = NULL;
@@ -386,9 +387,19 @@
     gchar *INDICATORS_CMD[] = {"init", "--user", "--startup-event", "indicator-services-start", NULL};
 #endif
 
-    if (g_key_file_has_key (config, "greeter", "show-indicators", NULL))
-    {
+    if (g_key_file_has_key (config, "greeter", "indicators", NULL))
+    {   /* no option = default list, empty value = empty list */
+        names = g_key_file_get_string_list (config, "greeter", "indicators", &length, NULL);
+    }
+    else if (g_key_file_has_key (config, "greeter", "show-indicators", NULL))
+    {   /* fallback mode: no option = empty value = default list */
         names = g_key_file_get_string_list (config, "greeter", "show-indicators", &length, NULL);
+        if (length == 0)
+            fallback = TRUE;
+    }
+
+    if (names && !fallback)
+    {
         builtin_items = g_hash_table_new (g_str_hash, g_str_equal);
 
         g_hash_table_insert (builtin_items, "~power", power_menuitem);


Follow ups