diff options
author | Robert Tari <robert@tari.in> | 2024-10-06 01:31:02 +0200 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2025-03-12 10:36:55 +0100 |
commit | b7791541706859af97c100bd6072dd0bcb137300 (patch) | |
tree | 012301fc8c03466945169df0229018a43cf091a6 /src | |
parent | e6838de2f5db6baa2ef52fe9f92fb3f64580c653 (diff) | |
download | ayatana-settings-b7791541706859af97c100bd6072dd0bcb137300.tar.gz ayatana-settings-b7791541706859af97c100bd6072dd0bcb137300.tar.bz2 ayatana-settings-b7791541706859af97c100bd6072dd0bcb137300.zip |
src/gtk.h: Change icons when Gtk switches to high contrast mode
Diffstat (limited to 'src')
-rw-r--r-- | src/gtk.h | 14 |
1 files changed, 14 insertions, 0 deletions
@@ -75,18 +75,32 @@ static inline void application_onThemeChanged (GSettings *pSettings, const gchar if (bHighContrast && bDark) { g_object_set (pGtkSettings, "gtk-theme-name", "Default-hc-dark", NULL); + gboolean bExists = g_file_test ("/usr/share/icons/HighContrast/index.theme", G_FILE_TEST_EXISTS); + + if (bExists) + { + g_object_set (pGtkSettings, "gtk-icon-theme-name", "HighContrast", NULL); + } } else if (bHighContrast) { g_object_set (pGtkSettings, "gtk-theme-name", "Default-hc", NULL); + gboolean bExists = g_file_test ("/usr/share/icons/HighContrast/index.theme", G_FILE_TEST_EXISTS); + + if (bExists) + { + g_object_set (pGtkSettings, "gtk-icon-theme-name", "HighContrast", NULL); + } } else if (bDark) { gtk_settings_reset_property (pGtkSettings, "gtk-theme-name"); + gtk_settings_reset_property (pGtkSettings, "gtk-icon-theme-name"); } else { gtk_settings_reset_property (pGtkSettings, "gtk-theme-name"); + gtk_settings_reset_property (pGtkSettings, "gtk-icon-theme-name"); } g_object_set (pGtkSettings, "gtk-application-prefer-dark-theme", bDark, NULL); |