summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/inkscape.cpp5
-rw-r--r--src/ui/dialog/inkscape-preferences.cpp7
-rw-r--r--src/widgets/desktop-widget.cpp2
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");
}
}