summaryrefslogtreecommitdiffstats
path: root/src/ui
diff options
context:
space:
mode:
authorJabiertxof <jabier.arraiza@marker.es>2018-11-14 19:54:20 +0000
committerJabiertxof <jabier.arraiza@marker.es>2018-11-14 19:54:20 +0000
commit12feb8a6bf9fd5949f1b6b184dd3d32bb34e1882 (patch)
tree221ec775e43659300fb708721e120e3b9c9d0808 /src/ui
parentUse better syntax, clean up before reloading and call SPObjet release (diff)
downloadinkscape-12feb8a6bf9fd5949f1b6b184dd3d32bb34e1882.tar.gz
inkscape-12feb8a6bf9fd5949f1b6b184dd3d32bb34e1882.zip
Fix bug forcing symbolic system icons in hicolor theme
Diffstat (limited to 'src/ui')
-rw-r--r--src/ui/interface.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/ui/interface.cpp b/src/ui/interface.cpp
index 38af1a173..f55179e0f 100644
--- a/src/ui/interface.cpp
+++ b/src/ui/interface.cpp
@@ -271,7 +271,15 @@ void sp_ui_reload()
prefs_dialog->hide();
}
int window_geometry = prefs->getInt("/options/savewindowgeometry/value", PREFS_WINDOW_GEOMETRY_NONE);
- g_object_set(gtk_settings_get_default(), "gtk-icon-theme-name", prefs->getString("/theme/iconTheme").c_str(), NULL);
+ if (GtkSettings *settings = gtk_settings_get_default()) {
+ Glib::ustring themeiconname = prefs->getString("/theme/iconTheme");
+ if (themeiconname != "") {
+ if (themeiconname == "hicolor") {
+ themeiconname = "Adwaita";
+ }
+ g_object_set(settings, "gtk-icon-theme-name", themeiconname.c_str(), NULL);
+ }
+ }
prefs->setInt("/options/savewindowgeometry/value", PREFS_WINDOW_GEOMETRY_LAST);
prefs->save();
std::list<SPDesktop *> desktops;