← Back to team overview

lightdm-gtk-greeter-team team mailing list archive

[Merge] lp:~ppbogdan/lightdm-gtk-greeter/cursor-theme into lp:lightdm-gtk-greeter

 

Piotr Bogdan has proposed merging lp:~ppbogdan/lightdm-gtk-greeter/cursor-theme into lp:lightdm-gtk-greeter.

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

For more details, see:
https://code.launchpad.net/~ppbogdan/lightdm-gtk-greeter/cursor-theme/+merge/324378

This allows cursor theme customisation, including both theme as well as the cursor size.
-- 
Your team LightDM Gtk+ Greeter Development Team is requested to review the proposed merge of lp:~ppbogdan/lightdm-gtk-greeter/cursor-theme into lp:lightdm-gtk-greeter.
=== modified file 'src/greeterconfiguration.h'
--- src/greeterconfiguration.h	2015-03-27 05:29:45 +0000
+++ src/greeterconfiguration.h	2017-05-22 08:44:01 +0000
@@ -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"

=== modified file 'src/lightdm-gtk-greeter.c'
--- src/lightdm-gtk-greeter.c	2016-10-06 09:33:35 +0000
+++ src/lightdm-gtk-greeter.c	2017-05-22 08:44:01 +0000
@@ -275,7 +275,8 @@
 /* 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 @@
     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)
     {


Follow ups