- g_quark_from_string("none");
- g_quark_from_string("root");
- g_quark_from_string("client");
- g_quark_from_string("titlebar");
- g_quark_from_string("handle");
- g_quark_from_string("frame");
- g_quark_from_string("blcorner");
- g_quark_from_string("brcorner");
- g_quark_from_string("maximize");
- g_quark_from_string("alldesktops");
- g_quark_from_string("iconify");
- g_quark_from_string("icon");
- g_quark_from_string("close");
-
- s_b_color = s_cb_unfocused_color = s_cb_focused_color =
- s_title_unfocused_color = s_title_focused_color =
- s_titlebut_unfocused_color = s_titlebut_focused_color = NULL;
- s_winfont = NULL;
- s_max_mask = s_icon_mask = s_desk_mask = s_close_mask = NULL;
-
- a_focused_unpressed_max = appearance_new(Surface_Planar, 1);
- a_focused_pressed_max = appearance_new(Surface_Planar, 1);
- a_unfocused_unpressed_max = appearance_new(Surface_Planar, 1);
- a_unfocused_pressed_max = appearance_new(Surface_Planar, 1);
- a_focused_unpressed_close = NULL;
- a_focused_pressed_close = NULL;
- a_unfocused_unpressed_close = NULL;
- a_unfocused_pressed_close = NULL;
- a_focused_unpressed_desk = NULL;
- a_focused_pressed_desk = NULL;
- a_unfocused_unpressed_desk = NULL;
- a_unfocused_pressed_desk = NULL;
- a_focused_unpressed_iconify = NULL;
- a_focused_pressed_iconify = NULL;
- a_unfocused_unpressed_iconify = NULL;
- a_unfocused_pressed_iconify = NULL;
- a_focused_grip = appearance_new(Surface_Planar, 0);
- a_unfocused_grip = appearance_new(Surface_Planar, 0);
- a_focused_title = appearance_new(Surface_Planar, 0);
- a_unfocused_title = appearance_new(Surface_Planar, 0);
- a_focused_label = appearance_new(Surface_Planar, 1);
- a_unfocused_label = appearance_new(Surface_Planar, 1);
- a_icon = appearance_new(Surface_Planar, 1);
- a_focused_handle = appearance_new(Surface_Planar, 0);
- a_unfocused_handle = appearance_new(Surface_Planar, 0);
-
- if (load()) {
- RECT_SET(a_focused_pressed_desk->area, 0, 0,
+ char *path;
+
+ /* create the ~/.openbox/themes/openbox dir */
+ path = g_build_filename(g_get_home_dir(), ".openbox", "themes", "openbox",
+ NULL);
+ mkdir(path, (S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IWGRP | S_IXGRP |
+ S_IROTH | S_IWOTH | S_IXOTH));
+ g_free(path);
+
+ ob_s_b_color = ob_s_cb_unfocused_color = ob_s_cb_focused_color =
+ ob_s_title_unfocused_color = ob_s_title_focused_color =
+ ob_s_titlebut_unfocused_color = ob_s_titlebut_focused_color = NULL;
+ ob_s_winfont = NULL;
+ ob_s_max_set_mask = ob_s_max_unset_mask = NULL;
+ ob_s_desk_set_mask = ob_s_desk_unset_mask = NULL;
+ ob_s_shade_set_mask = ob_s_shade_unset_mask = NULL;
+ ob_s_iconify_mask = ob_s_close_mask = NULL;
+
+ ob_a_focused_unpressed_max = appearance_new(Surface_Planar, 1);
+ ob_a_focused_pressed_max = appearance_new(Surface_Planar, 1);
+ ob_a_focused_pressed_set_max = appearance_new(Surface_Planar, 1);
+ ob_a_unfocused_unpressed_max = appearance_new(Surface_Planar, 1);
+ ob_a_unfocused_pressed_max = appearance_new(Surface_Planar, 1);
+ ob_a_unfocused_pressed_set_max = appearance_new(Surface_Planar, 1);
+ ob_a_focused_unpressed_close = NULL;
+ ob_a_focused_pressed_close = NULL;
+ ob_a_unfocused_unpressed_close = NULL;
+ ob_a_unfocused_pressed_close = NULL;
+ ob_a_focused_unpressed_desk = NULL;
+ ob_a_focused_pressed_desk = NULL;
+ ob_a_focused_pressed_set_desk = NULL;
+ ob_a_unfocused_unpressed_desk = NULL;
+ ob_a_unfocused_pressed_desk = NULL;
+ ob_a_unfocused_pressed_set_desk = NULL;
+ ob_a_focused_unpressed_shade = NULL;
+ ob_a_focused_pressed_shade = NULL;
+ ob_a_focused_pressed_set_shade = NULL;
+ ob_a_unfocused_unpressed_shade = NULL;
+ ob_a_unfocused_pressed_shade = NULL;
+ ob_a_unfocused_pressed_set_shade = NULL;
+ ob_a_focused_unpressed_iconify = NULL;
+ ob_a_focused_pressed_iconify = NULL;
+ ob_a_unfocused_unpressed_iconify = NULL;
+ ob_a_unfocused_pressed_iconify = NULL;
+ ob_a_focused_grip = appearance_new(Surface_Planar, 0);
+ ob_a_unfocused_grip = appearance_new(Surface_Planar, 0);
+ ob_a_focused_title = appearance_new(Surface_Planar, 0);
+ ob_a_unfocused_title = appearance_new(Surface_Planar, 0);
+ ob_a_focused_label = appearance_new(Surface_Planar, 1);
+ ob_a_unfocused_label = appearance_new(Surface_Planar, 1);
+ ob_a_icon = appearance_new(Surface_Planar, 1);
+ ob_a_focused_handle = appearance_new(Surface_Planar, 0);
+ ob_a_unfocused_handle = appearance_new(Surface_Planar, 0);
+ ob_app_hilite_label = appearance_new(Surface_Planar, 1);
+ ob_app_unhilite_label = appearance_new(Surface_Planar, 1);
+
+ if (obtheme_load()) {
+ RECT_SET(ob_a_focused_pressed_desk->area, 0, 0,
+ BUTTON_SIZE, BUTTON_SIZE);
+ RECT_SET(ob_a_focused_pressed_set_desk->area, 0, 0,
+ BUTTON_SIZE, BUTTON_SIZE);
+ RECT_SET(ob_a_focused_unpressed_desk->area, 0, 0,
+ BUTTON_SIZE, BUTTON_SIZE);
+ RECT_SET(ob_a_unfocused_pressed_desk->area, 0, 0,
+ BUTTON_SIZE, BUTTON_SIZE);
+ RECT_SET(ob_a_unfocused_pressed_set_desk->area, 0, 0,
+ BUTTON_SIZE, BUTTON_SIZE);
+ RECT_SET(ob_a_unfocused_unpressed_desk->area, 0, 0,