]> Dogcows Code - chaz/openbox/blobdiff - render/theme.c
don't place windows over docks. but let them place over menus and toolbars. i guess...
[chaz/openbox] / render / theme.c
index afcb70d23692a65e1d48fb7c6276ad293dea626f..313f834c51653990f9f20688459118e213075392 100644 (file)
@@ -1220,6 +1220,8 @@ void RrThemeFree(RrTheme *theme)
         RrColorFree(theme->menu_border_color);
         RrColorFree(theme->frame_focused_border_color);
         RrColorFree(theme->frame_unfocused_border_color);
+        RrColorFree(theme->title_separator_focused_color);
+        RrColorFree(theme->title_separator_unfocused_color);
         RrColorFree(theme->cb_unfocused_color);
         RrColorFree(theme->cb_focused_color);
         RrColorFree(theme->title_focused_color);
@@ -1470,30 +1472,33 @@ static void parse_style(gchar *tex, RrSurfaceColorType *grad,
         } else {
             *grad = RR_SURFACE_SOLID;
         }
+    }
 
-        if (strstr(tex, "sunken") != NULL)
-            *relief = RR_RELIEF_SUNKEN;
-        else if (strstr(tex, "flat") != NULL)
-            *relief = RR_RELIEF_FLAT;
-        else
-            *relief = RR_RELIEF_RAISED;
-
-        *border = FALSE;
-        if (*relief == RR_RELIEF_FLAT) {
-            if (strstr(tex, "border") != NULL)
-                *border = TRUE;
-        } else {
-            if (strstr(tex, "bevel2") != NULL)
-                *bevel = RR_BEVEL_2;
-            else
-                *bevel = RR_BEVEL_1;
-        }
+    if (strstr(tex, "sunken") != NULL)
+        *relief = RR_RELIEF_SUNKEN;
+    else if (strstr(tex, "flat") != NULL)
+        *relief = RR_RELIEF_FLAT;
+    else if (strstr(tex, "raised") != NULL)
+        *relief = RR_RELIEF_RAISED;
+    else
+        *relief = (*grad == RR_SURFACE_PARENTREL) ?
+                  RR_RELIEF_FLAT : RR_RELIEF_RAISED;
 
-        if (strstr(tex, "interlaced") != NULL)
-            *interlaced = TRUE;
+    *border = FALSE;
+    if (*relief == RR_RELIEF_FLAT) {
+        if (strstr(tex, "border") != NULL)
+            *border = TRUE;
+    } else {
+        if (strstr(tex, "bevel2") != NULL)
+            *bevel = RR_BEVEL_2;
         else
-            *interlaced = FALSE;
+            *bevel = RR_BEVEL_1;
     }
+
+    if (strstr(tex, "interlaced") != NULL)
+        *interlaced = TRUE;
+    else
+        *interlaced = FALSE;
 }
 
 static xmlNodePtr find_node(xmlNodePtr n, const gchar *names[])
This page took 0.023067 seconds and 4 git commands to generate.