summaryrefslogtreecommitdiff
path: root/extra/oxygen-gtk2/fix-regression.patch
blob: 466b53c1751434b846681b7c8bc5d47acd6f0a47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
diff --git a/src/oxygenqtsettings.cpp b/src/oxygenqtsettings.cpp
index f2ad1af..9965086 100644
--- a/src/oxygenqtsettings.cpp
+++ b/src/oxygenqtsettings.cpp
@@ -102,6 +102,9 @@ namespace Oxygen
 
         const bool forced( flags&Forced );
 
+        // no attempt at initializing if gtk settings is not yet set
+        if( !gtk_settings_get_default() ) return false;
+
         if( _initialized && !forced ) return false;
         else if( !forced ) _initialized = true;
 
diff --git a/src/oxygenstylewrapper.cpp b/src/oxygenstylewrapper.cpp
index ff0666b..a2572b0 100644
--- a/src/oxygenstylewrapper.cpp
+++ b/src/oxygenstylewrapper.cpp
@@ -3741,6 +3741,10 @@ namespace Oxygen
         #endif
 
         // style initialization
+        /*
+        this is normally achieved in theme_init, but is somehow not working with gnome shell
+        so that it is redone here, since duplication is avoided when initialization is called twice without modifications
+        */
         Style::instance().initialize();
 
         // hooks
diff --git a/src/oxygentheme.cpp b/src/oxygentheme.cpp
index 50b04e2..9bc49e1 100644
--- a/src/oxygentheme.cpp
+++ b/src/oxygentheme.cpp
@@ -52,12 +52,8 @@ void theme_init( GTypeModule* module )
     Oxygen::RCStyle::registerType( module );
     Oxygen::StyleWrapper::registerType( module );
 
-    // initialize oxygen here, for XUL applications
-    // special care is taken to not initialize everything
-    Oxygen::ApplicationName applicationName;
-    applicationName.initialize();
-    if( applicationName.isXul() )
-    { Oxygen::Style::instance().initialize( Oxygen::QtSettings::Forced | Oxygen::QtSettings::Colors ); }
+    // style initialization
+    Oxygen::Style::instance().initialize();
 
 }