summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPiotr Bogdan <>2017-05-22 09:37:19 +0100
committerPiotr Bogdan <>2017-05-22 09:37:19 +0100
commit506459e65939116f001e8168fc6267906e23f8ad (patch)
treefdca76a1691c910800314bccf88e4b3006191c5c /src
parentbdc69d6630af267664cc013d8329cbd1b8fb4b9b (diff)
downloadlightdm-gtk-greeter-git-506459e65939116f001e8168fc6267906e23f8ad.tar.gz
Allow cursor theme customisation.
Diffstat (limited to 'src')
-rw-r--r--src/greeterconfiguration.h2
-rw-r--r--src/lightdm-gtk-greeter.c18
2 files changed, 19 insertions, 1 deletions
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)
{