diff options
author | Lionel Le Folgoc <mrpouit@ubuntu.com> | 2012-07-31 00:11:28 +0200 |
---|---|---|
committer | Lionel Le Folgoc <mrpouit@ubuntu.com> | 2012-07-31 00:11:28 +0200 |
commit | 977f6ed62a455a28128de4bd6ca80e4aa702c072 (patch) | |
tree | f8cacaa78e3ebcccd2e336375904621224bd2486 | |
parent | 8b73588a8c8f109772abbc15e661a902a3410879 (diff) | |
download | lightdm-gtk-greeter-977f6ed62a455a28128de4bd6ca80e4aa702c072.tar.gz |
add config option to set the icon theme
-rw-r--r-- | data/lightdm-gtk-greeter.conf | 2 | ||||
-rw-r--r-- | src/lightdm-gtk-greeter.c | 22 |
2 files changed, 21 insertions, 3 deletions
diff --git a/data/lightdm-gtk-greeter.conf b/data/lightdm-gtk-greeter.conf index 1869ea2..4f47b5f 100644 --- a/data/lightdm-gtk-greeter.conf +++ b/data/lightdm-gtk-greeter.conf @@ -3,6 +3,7 @@ # background = Background file to use, either an image path or a color (e.g. #772953) # show-language-selector (true or false) # theme-name = GTK+ theme to use +# icon-theme-name = Icon theme to use # font-name = Font to use # xft-antialias = Whether to antialias Xft fonts (true or false) # xft-dpi = Resolution for Xft in dots per inch (e.g. 96) @@ -15,6 +16,7 @@ #background= #show-language-selector=false #theme-name= +#icon-theme-name= #font-name= #xft-antialias= #xft-dpi= diff --git a/src/lightdm-gtk-greeter.c b/src/lightdm-gtk-greeter.c index b595888..1dbc887 100644 --- a/src/lightdm-gtk-greeter.c +++ b/src/lightdm-gtk-greeter.c @@ -29,7 +29,7 @@ static GtkEntry *prompt_entry; static GtkComboBox *user_combo; static GtkComboBox *session_combo; static GtkComboBox *language_combo; -static gchar *default_font_name, *default_theme_name; +static gchar *default_font_name, *default_theme_name, *default_icon_theme_name; static gboolean cancelling = FALSE, prompted = FALSE; static gchar * @@ -522,9 +522,15 @@ void a11y_contrast_cb (GtkWidget *widget) { if (gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (widget))) + { g_object_set (gtk_settings_get_default (), "gtk-theme-name", "HighContrastInverse", NULL); + g_object_set (gtk_settings_get_default (), "gtk-icon-theme-name", "HighContrastInverse", NULL); + } else + { g_object_set (gtk_settings_get_default (), "gtk-theme-name", default_theme_name, NULL); + g_object_set (gtk_settings_get_default (), "gtk-icon-theme-name", default_icon_theme_name, NULL); + } } static void @@ -770,12 +776,22 @@ main (int argc, char **argv) value = g_key_file_get_value (config, "greeter", "theme-name", NULL); if (value) { - g_debug ("Using theme %s", value); + g_debug ("Using Gtk+ theme %s", value); g_object_set (gtk_settings_get_default (), "gtk-theme-name", value, NULL); } g_free (value); g_object_get (gtk_settings_get_default (), "gtk-theme-name", &default_theme_name, NULL); - g_debug ("Default theme is '%s'", default_theme_name); + g_debug ("Default Gtk+ theme is '%s'", default_theme_name); + + value = g_key_file_get_value (config, "greeter", "icon-theme-name", NULL); + if (value) + { + g_debug ("Using icon theme %s", value); + g_object_set (gtk_settings_get_default (), "gtk-icon-theme-name", value, NULL); + } + g_free (value); + g_object_get (gtk_settings_get_default (), "gtk-icon-theme-name", &default_icon_theme_name, NULL); + g_debug ("Default theme is '%s'", default_icon_theme_name); value = g_key_file_get_value (config, "greeter", "font-name", NULL); if (value) |