diff --git a/src/inkscape.cpp b/src/inkscape.cpp index 38513d37abbbc82dc8bfc481e690fccd44fcaf99..9423bf7eb12639046b2e3becfa7500852692476a 100644 --- a/src/inkscape.cpp +++ b/src/inkscape.cpp @@ -398,7 +398,12 @@ void Application::add_gtk_css() if (themeiconname != "") { g_object_set(settings, "gtk-icon-theme-name", themeiconname.c_str(), NULL); } else { - prefs->setString("/theme/iconTheme", Glib::ustring(gtkIconThemeName)); + if (Glib::ustring(gtkIconThemeName) == "Adwaita") { + g_object_set(settings, "gtk-icon-theme-name", "hicolor", NULL); + prefs->setString("/theme/iconTheme", "hicolor"); + } else { + prefs->setString("/theme/iconTheme", Glib::ustring(gtkIconThemeName)); + } } } diff --git a/src/ui/dialog/inkscape-preferences.cpp b/src/ui/dialog/inkscape-preferences.cpp index 7ae7a78bb5b6510936ec8430dfa107da4c29b793..20550a3f8a2d66174b7eeadd435e885c454a4e84 100644 --- a/src/ui/dialog/inkscape-preferences.cpp +++ b/src/ui/dialog/inkscape-preferences.cpp @@ -1222,10 +1222,10 @@ void InkscapePreferences::initPageUI() std::sort(values.begin(), values.end()); labels.erase(unique(labels.begin(), labels.end()), labels.end()); values.erase(unique(values.begin(), values.end()), values.end()); - values.push_back(default_icon_theme); if (default_icon_theme == "Adwaita") { default_icon_theme = "hicolor"; } + values.emplace_back(default_icon_theme); Glib::ustring default_icon_label = _("Use system icons"); default_icon_label += " (" + default_icon_theme + ")"; labels.emplace_back(default_icon_label);