← Back to team overview

lightdm-gtk-greeter-team team mailing list archive

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

 

Andrew P. has proposed merging lp:~lightdm-gtk-greeter-team/lightdm-gtk-greeter/user_background 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/user_background/+merge/209529

New option: user-background=true|false (true by default)
true: greeter uses per-user backgrounds (provided by AccountsService), false - always uses background from .conf

https://bugs.launchpad.net/lightdm-gtk-greeter/+bug/1272426
-- 
https://code.launchpad.net/~lightdm-gtk-greeter-team/lightdm-gtk-greeter/user_background/+merge/209529
Your team LightDM Gtk+ Greeter Development Team is requested to review the proposed merge of lp:~lightdm-gtk-greeter-team/lightdm-gtk-greeter/user_background into lp:lightdm-gtk-greeter.
=== modified file 'src/lightdm-gtk-greeter.c'
--- src/lightdm-gtk-greeter.c	2014-03-02 08:13:23 +0000
+++ src/lightdm-gtk-greeter.c	2014-03-05 19:51:47 +0000
@@ -44,7 +44,7 @@
 
 #ifdef HAVE_LIBIDO
 /* Some indicators need ido library */
-#include "libido/libido.h"
+#include <libido/libido.h>
 #endif
 
 #include <lightdm.h>
@@ -133,11 +133,14 @@
     DimensionPosition x, y;
 } WindowPosition;
 
-const WindowPosition CENTERED_WINDOW_POS = { .x = {50, +1, TRUE, 0}, .y = {50, +1, TRUE, 0} };
-WindowPosition main_window_pos;
-
-GdkPixbuf* default_user_pixbuf = NULL;
-gchar* default_user_icon = "avatar-default";
+static const WindowPosition CENTERED_WINDOW_POS = { .x = {50, +1, TRUE, 0}, .y = {50, +1, TRUE, 0} };
+static WindowPosition main_window_pos;
+
+static GdkPixbuf* default_user_pixbuf = NULL;
+static gchar* default_user_icon = "avatar-default";
+
+static gboolean use_user_background = TRUE;
+
 
 static void
 pam_message_finalize (PAMConversationMessage *message)
@@ -1267,7 +1270,8 @@
     }
 
     set_login_button_label (greeter, username);
-    set_user_background (username);
+    if (use_user_background)
+        set_user_background (username);
     set_user_image (username);
     user = lightdm_user_list_get_user_by_name (lightdm_user_list_get_instance (), username);
     if (user)
@@ -2370,6 +2374,11 @@
     }
     g_free (value);
 
+    use_user_background = g_key_file_get_boolean(config, "greeter", "user-background", &error);
+    if (error)
+        use_user_background = TRUE;
+    g_clear_error(&error);
+
     /* Make the greeter behave a bit more like a screensaver if used as un/lock-screen by blanking the screen */
     gchar* end_ptr = NULL;
     int screensaver_timeout = 60;
@@ -2713,11 +2722,15 @@
         }
     }
     backgrounds = g_slist_reverse(backgrounds);
-
-    if (lightdm_greeter_get_hide_users_hint (greeter))
+    
+    if (lightdm_greeter_get_hide_users_hint (greeter) || !use_user_background)
     {
         /* Set the background to default */
         set_background (NULL);
+    }
+
+    if (lightdm_greeter_get_hide_users_hint (greeter))
+    {
         start_authentication ("*other");
     }
     else


Follow ups