[gnome-shell/wip/exalm/dark-1: 1/2] st/settings: Switch icon-theme when "high-contrast" is active




commit a8736bb643c4d3ae126e816fa47b6c13cb166016
Author: Florian Müllner <fmuellner gnome org>
Date:   Wed Jan 5 19:29:08 2022 +0100

    st/settings: Switch icon-theme when "high-contrast" is active
    
    This is in line with how GTK handles the setting. Since we are not
    using GtkSettings for the icon theme, we have to replicate the
    behavior ourselves.

 src/st/st-settings.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
---
diff --git a/src/st/st-settings.c b/src/st/st-settings.c
index 4a198758bf..40b827e440 100644
--- a/src/st/st-settings.c
+++ b/src/st/st-settings.c
@@ -183,7 +183,10 @@ st_settings_get_property (GObject    *object,
       g_value_set_boolean (value, settings->high_contrast);
       break;
     case PROP_GTK_ICON_THEME:
-      g_value_set_string (value, settings->gtk_icon_theme);
+      if (settings->high_contrast)
+        g_value_set_string (value, "HighContrast");
+      else
+        g_value_set_string (value, settings->gtk_icon_theme);
       break;
     case PROP_MAGNIFIER_ACTIVE:
       g_value_set_boolean (value, settings->magnifier_active);
@@ -374,6 +377,8 @@ on_a11y_interface_settings_changed (GSettings   *g_settings,
     {
       settings->high_contrast = g_settings_get_boolean (g_settings, key);
       g_object_notify_by_pspec (G_OBJECT (settings), props[PROP_HIGH_CONTRAST]);
+
+      g_object_notify_by_pspec (G_OBJECT (settings), props[PROP_GTK_ICON_THEME]);
     }
 }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]