diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/inkscape.cpp | 5 | ||||
| -rw-r--r-- | src/ui/dialog/inkscape-preferences.cpp | 7 | ||||
| -rw-r--r-- | src/widgets/desktop-widget.cpp | 2 |
3 files changed, 10 insertions, 4 deletions
diff --git a/src/inkscape.cpp b/src/inkscape.cpp index fd185649a..5c6f29c3f 100644 --- a/src/inkscape.cpp +++ b/src/inkscape.cpp @@ -395,12 +395,13 @@ Application::add_gtk_css() sp_svg_write_color(colornamed_inverse, sizeof(colornamed_inverse), colorset_inverse); if (prefs->getBool("/theme/symbolicIconsDefaultColor", true)) { css_str += "*{ -gtk-icon-style: symbolic;}"; - css_str += "image{ color: @theme_fg_color}"; + css_str += ".dark,.bright,.dark image,.bright image{ color: @theme_fg_color}"; css_str += "iconinverse{ color: @theme_bg_color;}"; css_str += "iconregular{ -gtk-icon-style: regular;}"; } else { css_str += "*{ -gtk-icon-style: symbolic;}"; - css_str += "image{ color:"; + css_str += ".dark *,.bright *{ color: @theme_fg_color;}"; + css_str += ".dark,.bright,.dark image,.bright image{ color:"; css_str += colornamed; css_str += ";}"; css_str += "#iconinverse{ color:"; diff --git a/src/ui/dialog/inkscape-preferences.cpp b/src/ui/dialog/inkscape-preferences.cpp index d10a2ac4a..191182528 100644 --- a/src/ui/dialog/inkscape-preferences.cpp +++ b/src/ui/dialog/inkscape-preferences.cpp @@ -656,7 +656,7 @@ void InkscapePreferences::symbolicDefaultColor(){ Glib::ustring css_str = ""; if (prefs->getBool("/theme/symbolicIcons", false)) { css_str += "*{ -gtk-icon-style: symbolic;}"; - css_str += "image{ color: @theme_fg_color}"; + css_str += ".dark,.bright,.dark image,.bright image{ color: @theme_fg_color;}"; css_str += "iconinverse{ color: @theme_bg_color;}"; css_str += "iconregular{ -gtk-icon-style: regular;}"; } else { @@ -697,7 +697,8 @@ void InkscapePreferences::symbolicAddClass() sp_svg_write_color(colornamed_inverse, sizeof(colornamed_inverse), colorset_inverse); if (prefs->getBool("/theme/symbolicIcons", false)) { css_str += "*{ -gtk-icon-style: symbolic;}"; - css_str += "image{ color:"; + css_str += ".dark *,.bright *{ color: @theme_fg_color;}"; + css_str += ".dark,.bright,.dark image,.bright image{ color:"; css_str += colornamed; css_str += ";}"; } else { @@ -770,7 +771,9 @@ void InkscapePreferences::themeChange() } if (dark) { window->get_style_context()->add_class("dark"); + window->get_style_context()->remove_class("bright"); } else { + window->get_style_context()->add_class("bright"); window->get_style_context()->remove_class("dark"); } } diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp index 88c70c75a..9db8b2af4 100644 --- a/src/widgets/desktop-widget.cpp +++ b/src/widgets/desktop-widget.cpp @@ -907,7 +907,9 @@ sp_desktop_widget_realize (GtkWidget *widget) } if (dark) { window->get_style_context()->add_class("dark"); + window->get_style_context()->remove_class("bright"); } else { + window->get_style_context()->add_class("bright"); window->get_style_context()->remove_class("dark"); } } |
