summaryrefslogtreecommitdiffstats
path: root/src/inkscape.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/inkscape.cpp')
-rw-r--r--src/inkscape.cpp50
1 files changed, 26 insertions, 24 deletions
diff --git a/src/inkscape.cpp b/src/inkscape.cpp
index 3383c5594..ada4fea96 100644
--- a/src/inkscape.cpp
+++ b/src/inkscape.cpp
@@ -459,32 +459,34 @@ Application::Application(const char* argv, bool use_gui) :
/* Load the preferences and menus */
Inkscape::Preferences *prefs = Inkscape::Preferences::get();
GtkSettings *settings = gtk_settings_get_default();
- const gchar *gtkThemeName;
- g_object_get(settings, "gtk-theme-name", &gtkThemeName, NULL);
- const gchar *gtkIconThemeName;
- g_object_get(settings, "gtk-icon-theme-name", &gtkIconThemeName, NULL);
- prefs->setString("/theme/defaultIconTheme", Glib::ustring(gtkIconThemeName));
- gboolean gtkApplicationPreferDarkTheme;
- g_object_get(settings, "gtk-application-prefer-dark-theme", &gtkApplicationPreferDarkTheme, NULL);
- if (prefs->getString("/theme/gtkTheme") != "") {
- g_object_set(settings, "gtk-theme-name", prefs->getString("/theme/gtkTheme").c_str(), NULL);
- }
- else {
- prefs->setString("/theme/gtkTheme", Glib::ustring(gtkThemeName));
- }
-
- if (prefs->getString("/theme/iconTheme") != "") {
- g_object_set(settings, "gtk-icon-theme-name", prefs->getString("/theme/iconTheme").c_str(), NULL);
- }
- else {
- Glib::ustring defaulticontheme = prefs->getString("/theme/defaultIconTheme");
- if (defaulticontheme == "Adwaita") {
- defaulticontheme = "hicolor";
+ if (settings) {
+ const gchar *gtkThemeName;
+ g_object_get(settings, "gtk-theme-name", &gtkThemeName, NULL);
+ const gchar *gtkIconThemeName;
+ g_object_get(settings, "gtk-icon-theme-name", &gtkIconThemeName, NULL);
+ prefs->setString("/theme/defaultIconTheme", Glib::ustring(gtkIconThemeName));
+ gboolean gtkApplicationPreferDarkTheme;
+ g_object_get(settings, "gtk-application-prefer-dark-theme", &gtkApplicationPreferDarkTheme, NULL);
+ if (prefs->getString("/theme/gtkTheme") != "") {
+ g_object_set(settings, "gtk-theme-name", prefs->getString("/theme/gtkTheme").c_str(), NULL);
}
- prefs->setString("/theme/iconTheme", defaulticontheme);
+ else {
+ prefs->setString("/theme/gtkTheme", Glib::ustring(gtkThemeName));
+ }
+
+ if (prefs->getString("/theme/iconTheme") != "") {
+ g_object_set(settings, "gtk-icon-theme-name", prefs->getString("/theme/iconTheme").c_str(), NULL);
+ }
+ else {
+ Glib::ustring defaulticontheme = prefs->getString("/theme/defaultIconTheme");
+ if (defaulticontheme == "Adwaita") {
+ defaulticontheme = "hicolor";
+ }
+ prefs->setString("/theme/iconTheme", defaulticontheme);
+ }
+ g_object_set(settings, "gtk-application-prefer-dark-theme",
+ prefs->getBool("/theme/darkTheme", gtkApplicationPreferDarkTheme), NULL);
}
- g_object_set(settings, "gtk-application-prefer-dark-theme",
- prefs->getBool("/theme/darkTheme", gtkApplicationPreferDarkTheme), NULL);
InkErrorHandler* handler = new InkErrorHandler(use_gui);
prefs->setErrorHandler(handler);
{