From 506459e65939116f001e8168fc6267906e23f8ad Mon Sep 17 00:00:00 2001 From: Piotr Bogdan <> Date: Mon, 22 May 2017 09:37:19 +0100 Subject: Allow cursor theme customisation. --- src/greeterconfiguration.h | 2 ++ src/lightdm-gtk-greeter.c | 18 +++++++++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/greeterconfiguration.h b/src/greeterconfiguration.h index fee59f4..29e447a 100644 --- a/src/greeterconfiguration.h +++ b/src/greeterconfiguration.h @@ -11,6 +11,8 @@ #define CONFIG_KEY_SCREENSAVER_TIMEOUT "screensaver-timeout" #define CONFIG_KEY_THEME "theme-name" #define CONFIG_KEY_ICON_THEME "icon-theme-name" +#define CONFIG_KEY_CURSOR_THEME "cursor-theme-name" +#define CONFIG_KEY_CURSOR_THEME_SIZE "cursor-theme-size" #define CONFIG_KEY_FONT "font-name" #define CONFIG_KEY_DPI "xft-dpi" #define CONFIG_KEY_ANTIALIAS "xft-antialias" diff --git a/src/lightdm-gtk-greeter.c b/src/lightdm-gtk-greeter.c index 838cbd7..bcce1c8 100644 --- a/src/lightdm-gtk-greeter.c +++ b/src/lightdm-gtk-greeter.c @@ -275,7 +275,8 @@ static GdkFilterReturn xkl_xevent_filter (GdkXEvent *xev, GdkEvent *event, gpoin /* a11y indicator */ static gchar *default_font_name, *default_theme_name, - *default_icon_theme_name; + *default_icon_theme_name, + *default_cursor_theme_name; void a11y_font_cb (GtkCheckMenuItem *item); void a11y_contrast_cb (GtkCheckMenuItem *item); void a11y_keyboard_cb (GtkCheckMenuItem *item, gpointer user_data); @@ -2745,6 +2746,21 @@ main (int argc, char **argv) g_object_get (gtk_settings_get_default (), "gtk-icon-theme-name", &default_icon_theme_name, NULL); g_debug ("[Configuration] Icons theme: '%s'", default_icon_theme_name); + value = config_get_string (NULL, CONFIG_KEY_CURSOR_THEME, NULL); + if (value) + { + g_debug ("[Configuration] Changing cursor theme to '%s'", value); + g_object_set (gtk_settings_get_default (), "gtk-cursor-theme-name", value, NULL); + g_free (value); + } + g_object_get (gtk_settings_get_default (), "gtk-cursor-theme-name", &default_cursor_theme_name, NULL); + g_debug ("[Configuration] Cursor theme: '%s'", default_cursor_theme_name); + + if (config_has_key(NULL, CONFIG_KEY_CURSOR_THEME_SIZE)) + { + g_object_set (gtk_settings_get_default (), "gtk-cursor-theme-size", config_get_int (NULL, CONFIG_KEY_CURSOR_THEME_SIZE, 16), NULL); + } + value = config_get_string (NULL, CONFIG_KEY_FONT, "Sans 10"); if (value) { -- cgit v1.2.1