changes to the client menu, which entries are there, and reorganizing, and renaming.
authorDana Jansens <danakj@orodu.net>
Sat, 5 May 2007 22:26:59 +0000 (22:26 +0000)
committerDana Jansens <danakj@orodu.net>
Sat, 5 May 2007 22:26:59 +0000 (22:26 +0000)
let you highlight disabled menu entries, they just aren't runable of course, and add the activedisabled theme element for these entries.
add the all desktops button picture to "All desktops" in the client menu
update the themes for the new element, and some changes to make things more readable-better contrast.

CLEARLOOKS-OLIVE is now DIFFERENT FROM THE 3.4 BRANCH SO DON'T RE-RUN THEMETOXML ON IT :( :(
yeah.. i think that is everything?

20 files changed:
Makefile.am
data/themerc.xsd
openbox/client_menu.c
openbox/event.c
openbox/menu.c
openbox/menu.h
openbox/menuframe.c
openbox/menuframe.h
render/theme.c
render/theme.h
themes/Artwiz-boxed/openbox-3/bullet.xbm [deleted file]
themes/Artwiz-boxed/openbox-3/themerc.xml
themes/Bear2/openbox-3/themerc.xml
themes/Clearlooks-Olive/openbox-3/themerc.xml
themes/Clearlooks/openbox-3/themerc.xml
themes/Mikachu/openbox-3/themerc.xml
themes/Natura/openbox-3/themerc.xml
themes/Orang/openbox-3/themerc.xml
themes/Syscrash/openbox-3/themerc.xml
tools/themetoxml/themetoxml.c

index 9bef49a..b879c01 100644 (file)
@@ -292,7 +292,6 @@ dist_natura_theme_DATA= \
 
 artwizboxed_themedir = $(themedir)/Artwiz-boxed/openbox-3
 dist_artwizboxed_theme_DATA= \
-       themes/Artwiz-boxed/openbox-3/bullet.xbm \
        themes/Artwiz-boxed/openbox-3/close.xbm \
        themes/Artwiz-boxed/openbox-3/desk_toggled.xbm \
        themes/Artwiz-boxed/openbox-3/desk.xbm \
index a122c3a..c143212 100755 (executable)
       <xs:element name="inactive" type="obt:text" minOccurs="0"/>
       <xs:element name="active" type="obt:textarea" minOccurs="0"/>
       <xs:element name="disabled" type="obt:text" minOccurs="0"/>
+      <xs:element name="activedisabled" type="obt:textarea" minOccurs="0"/>
     </xs:all>
   </xs:complexType>
 
index 011e3ec..da6ac2d 100644 (file)
@@ -41,9 +41,8 @@ enum {
     CLIENT_SEND_TO,
     CLIENT_LAYER,
     CLIENT_ICONIFY,
+    CLIENT_RESTORE,
     CLIENT_MAXIMIZE,
-    CLIENT_RAISE,
-    CLIENT_LOWER,
     CLIENT_SHADE,
     CLIENT_DECORATE,
     CLIENT_MOVE,
@@ -69,15 +68,15 @@ static gboolean client_update(ObMenuFrame *frame, gpointer data)
     e = menu_find_entry_id(menu, CLIENT_ICONIFY);
     e->data.normal.enabled = frame->client->functions & OB_CLIENT_FUNC_ICONIFY;
 
+    e = menu_find_entry_id(menu, CLIENT_RESTORE);
+    e->data.normal.enabled =frame->client->max_horz || frame->client->max_vert;
+
     e = menu_find_entry_id(menu, CLIENT_MAXIMIZE);
-    menu_entry_set_label(e,
-                         (frame->client->max_vert || frame->client->max_horz ?
-                          _("Restor&e") : _("Maximiz&e")), TRUE);
-    e->data.normal.enabled =frame->client->functions & OB_CLIENT_FUNC_MAXIMIZE;
+    e->data.normal.enabled =
+        (frame->client->functions & OB_CLIENT_FUNC_MAXIMIZE) &&
+        !frame->client->max_horz && !frame->client->max_vert;
 
     e = menu_find_entry_id(menu, CLIENT_SHADE);
-    menu_entry_set_label(e, (frame->client->shaded ?
-                             _("&Roll down") : _("&Roll up")), TRUE);
     e->data.normal.enabled = frame->client->functions & OB_CLIENT_FUNC_SHADE;
 
     e = menu_find_entry_id(menu, CLIENT_MOVE);
@@ -153,6 +152,16 @@ static gboolean send_to_update(ObMenuFrame *frame, gpointer data)
         act->data.sendto.follow = FALSE;
         acts = g_slist_prepend(NULL, act);
         e = menu_add_normal(menu, desk, name, acts, FALSE);
+        if (desk == DESKTOP_ALL) {
+            e->data.normal.mask = ob_rr_theme->desk_mask;
+            e->data.normal.mask_normal_color = ob_rr_theme->menu_color;
+            e->data.normal.mask_selected_color =
+                ob_rr_theme->menu_selected_color;
+            e->data.normal.mask_disabled_color =
+                ob_rr_theme->menu_disabled_color;
+            e->data.normal.mask_disabled_selected_color =
+                ob_rr_theme->menu_disabled_selected_color;
+        }
 
         if (frame->client->desktop == desk)
             e->data.normal.enabled = FALSE;
@@ -257,57 +266,66 @@ void client_menu_startup()
     menu_set_update_func(menu, client_update);
     menu_set_place_func(menu, client_menu_place);
 
-    menu_add_submenu(menu, CLIENT_SEND_TO, SEND_TO_MENU_NAME);
+    acts = g_slist_prepend(NULL, action_from_string
+                           ("ToggleMaximizeFull",
+                            OB_USER_ACTION_MENU_SELECTION));
+    e = menu_add_normal(menu, CLIENT_RESTORE, _("R&estore"), acts, TRUE);
+    e->data.normal.mask = ob_rr_theme->max_toggled_mask; 
+    e->data.normal.mask_normal_color = ob_rr_theme->menu_color;
+    e->data.normal.mask_selected_color = ob_rr_theme->menu_selected_color;
+    e->data.normal.mask_disabled_color = ob_rr_theme->menu_disabled_color;
+    e->data.normal.mask_disabled_selected_color =
+        ob_rr_theme->menu_disabled_selected_color;
 
-    menu_add_submenu(menu, CLIENT_LAYER, LAYER_MENU_NAME);
+    acts = g_slist_prepend(NULL, action_from_string
+                           ("Move", OB_USER_ACTION_MENU_SELECTION));
+    menu_add_normal(menu, CLIENT_MOVE, _("&Move"), acts, TRUE);
+
+    acts = g_slist_prepend(NULL, action_from_string
+                           ("Resize", OB_USER_ACTION_MENU_SELECTION));
+    menu_add_normal(menu, CLIENT_RESIZE, _("Resi&ze"), acts, TRUE);
 
     acts = g_slist_prepend(NULL, action_from_string
                            ("Iconify", OB_USER_ACTION_MENU_SELECTION));
     e = menu_add_normal(menu, CLIENT_ICONIFY, _("Ico&nify"), acts, TRUE);
     e->data.normal.mask = ob_rr_theme->iconify_mask;
     e->data.normal.mask_normal_color = ob_rr_theme->menu_color;
-    e->data.normal.mask_disabled_color = ob_rr_theme->menu_disabled_color;
     e->data.normal.mask_selected_color = ob_rr_theme->menu_selected_color;
+    e->data.normal.mask_disabled_color = ob_rr_theme->menu_disabled_color;
+    e->data.normal.mask_disabled_selected_color =
+        ob_rr_theme->menu_disabled_selected_color;
 
     acts = g_slist_prepend(NULL, action_from_string
                            ("ToggleMaximizeFull",
                             OB_USER_ACTION_MENU_SELECTION));
-    e = menu_add_normal(menu, CLIENT_MAXIMIZE, _("Maximiz&e"), acts, TRUE);
+    e = menu_add_normal(menu, CLIENT_MAXIMIZE, _("Ma&ximize"), acts, TRUE);
     e->data.normal.mask = ob_rr_theme->max_mask; 
     e->data.normal.mask_normal_color = ob_rr_theme->menu_color;
-    e->data.normal.mask_disabled_color = ob_rr_theme->menu_disabled_color;
     e->data.normal.mask_selected_color = ob_rr_theme->menu_selected_color;
-
-    acts = g_slist_prepend(NULL, action_from_string
-                           ("Raise", OB_USER_ACTION_MENU_SELECTION));
-    menu_add_normal(menu, CLIENT_RAISE, _("Raise to &top"), acts, TRUE);
-
-    acts = g_slist_prepend(NULL, action_from_string
-                           ("Lower", OB_USER_ACTION_MENU_SELECTION));
-    menu_add_normal(menu, CLIENT_LOWER, _("Lower to &bottom"),acts, TRUE);
+    e->data.normal.mask_disabled_color = ob_rr_theme->menu_disabled_color;
+    e->data.normal.mask_disabled_selected_color =
+        ob_rr_theme->menu_disabled_selected_color;
 
     acts = g_slist_prepend(NULL, action_from_string
                            ("ToggleShade", OB_USER_ACTION_MENU_SELECTION));
-    e = menu_add_normal(menu, CLIENT_SHADE, _("&Roll up"), acts, TRUE);
+    e = menu_add_normal(menu, CLIENT_SHADE, _("&Roll up/down"), acts, TRUE);
     e->data.normal.mask = ob_rr_theme->shade_mask;
     e->data.normal.mask_normal_color = ob_rr_theme->menu_color;
-    e->data.normal.mask_disabled_color = ob_rr_theme->menu_disabled_color;
     e->data.normal.mask_selected_color = ob_rr_theme->menu_selected_color;
+    e->data.normal.mask_disabled_color = ob_rr_theme->menu_disabled_color;
+    e->data.normal.mask_disabled_selected_color =
+        ob_rr_theme->menu_disabled_selected_color;
 
     acts = g_slist_prepend(NULL, action_from_string
                            ("ToggleDecorations",
                             OB_USER_ACTION_MENU_SELECTION));
-    menu_add_normal(menu, CLIENT_DECORATE, _("&Decorate"), acts, TRUE);
+    menu_add_normal(menu, CLIENT_DECORATE, _("Un/&Decorate"), acts, TRUE);
 
     menu_add_separator(menu, -1, NULL);
 
-    acts = g_slist_prepend(NULL, action_from_string
-                           ("Move", OB_USER_ACTION_MENU_SELECTION));
-    menu_add_normal(menu, CLIENT_MOVE, _("&Move"), acts, TRUE);
+    menu_add_submenu(menu, CLIENT_SEND_TO, SEND_TO_MENU_NAME);
 
-    acts = g_slist_prepend(NULL, action_from_string
-                           ("Resize", OB_USER_ACTION_MENU_SELECTION));
-    menu_add_normal(menu, CLIENT_RESIZE, _("Resi&ze"), acts, TRUE);
+    menu_add_submenu(menu, CLIENT_LAYER, LAYER_MENU_NAME);
 
     menu_add_separator(menu, -1, NULL);
 
@@ -316,6 +334,8 @@ void client_menu_startup()
     e = menu_add_normal(menu, CLIENT_CLOSE, _("&Close"), acts, TRUE);
     e->data.normal.mask = ob_rr_theme->close_mask;
     e->data.normal.mask_normal_color = ob_rr_theme->menu_color;
-    e->data.normal.mask_disabled_color = ob_rr_theme->menu_disabled_color;
     e->data.normal.mask_selected_color = ob_rr_theme->menu_selected_color;
+    e->data.normal.mask_disabled_color = ob_rr_theme->menu_disabled_color;
+    e->data.normal.mask_disabled_selected_color =
+        ob_rr_theme->menu_disabled_selected_color;
 }
index 61aea44..25460a7 100644 (file)
@@ -1288,8 +1288,7 @@ static gboolean event_handle_menu_keyboard(XEvent *ev)
             ObMenuEntryFrame *e = it->data;
             gunichar entrykey = 0;
 
-            if (e->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
-                e->entry->data.normal.enabled)
+            if (e->entry->type == OB_MENU_ENTRY_TYPE_NORMAL)
                 entrykey = e->entry->data.normal.shortcut;
             else if (e->entry->type == OB_MENU_ENTRY_TYPE_SUBMENU)
                 entrykey = e->entry->data.submenu.submenu->shortcut;
@@ -1309,7 +1308,8 @@ static gboolean event_handle_menu_keyboard(XEvent *ev)
                 num_found == 1)
             {
                 menu_frame_select(frame, found, TRUE);
-                usleep(50000);
+                usleep(50000); /* highlight the item for a short bit so the
+                                  user can see what happened */
                 menu_entry_frame_execute(found, state, ev->xkey.time);
             } else {
                 menu_frame_select(frame, found, TRUE);
index 9aed40a..741e27c 100644 (file)
@@ -382,10 +382,10 @@ void menu_show(gchar *name, gint x, gint y, gint button, ObClient *client)
     if (!menu_frame_show_topmenu(frame, x, y, button))
         menu_frame_free(frame);
     else if (frame->entries) {
+        /* select the first entry if it's not a submenu */
         ObMenuEntryFrame *e = frame->entries->data;
-        if (e->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
-            e->entry->data.normal.enabled)
-                menu_frame_select(frame, e, FALSE);
+        if (e->entry->type == OB_MENU_ENTRY_TYPE_NORMAL)
+            menu_frame_select(frame, e, FALSE);
     }
 }
 
index b08f7c9..64cbbd6 100644 (file)
@@ -112,8 +112,9 @@ struct _ObNormalMenuEntry {
     /* Mask icon */
     RrPixmapMask *mask;
     RrColor *mask_normal_color;
-    RrColor *mask_disabled_color;
     RrColor *mask_selected_color;
+    RrColor *mask_disabled_color;
+    RrColor *mask_disabled_selected_color;
 };
 
 struct _ObSubmenuMenuEntry {
index a95e46f..f87c3c0 100644 (file)
@@ -140,8 +140,10 @@ static ObMenuEntryFrame* menu_entry_frame_new(ObMenuEntry *entry,
     XMapWindow(ob_display, self->text);
 
     self->a_normal = RrAppearanceCopy(ob_rr_theme->a_menu_normal);
-    self->a_disabled = RrAppearanceCopy(ob_rr_theme->a_menu_disabled);
     self->a_selected = RrAppearanceCopy(ob_rr_theme->a_menu_selected);
+    self->a_disabled = RrAppearanceCopy(ob_rr_theme->a_menu_disabled);
+    self->a_disabled_selected =
+        RrAppearanceCopy(ob_rr_theme->a_menu_disabled_selected);
 
     if (entry->type == OB_MENU_ENTRY_TYPE_SEPARATOR) {
         self->a_separator = RrAppearanceCopy(ob_rr_theme->a_clear_tex);
@@ -159,10 +161,12 @@ static ObMenuEntryFrame* menu_entry_frame_new(ObMenuEntry *entry,
 
     self->a_text_normal =
         RrAppearanceCopy(ob_rr_theme->a_menu_text_normal);
-    self->a_text_disabled =
-        RrAppearanceCopy(ob_rr_theme->a_menu_text_disabled);
     self->a_text_selected =
         RrAppearanceCopy(ob_rr_theme->a_menu_text_selected);
+    self->a_text_disabled =
+        RrAppearanceCopy(ob_rr_theme->a_menu_text_disabled);
+    self->a_text_disabled_selected =
+        RrAppearanceCopy(ob_rr_theme->a_menu_text_disabled_selected);
     self->a_text_title =
         RrAppearanceCopy(ob_rr_theme->a_menu_text_title);
 
@@ -186,15 +190,17 @@ static void menu_entry_frame_free(ObMenuEntryFrame *self)
         }
 
         RrAppearanceFree(self->a_normal);
-        RrAppearanceFree(self->a_disabled);
         RrAppearanceFree(self->a_selected);
+        RrAppearanceFree(self->a_disabled);
+        RrAppearanceFree(self->a_disabled_selected);
 
         RrAppearanceFree(self->a_separator);
         RrAppearanceFree(self->a_icon);
         RrAppearanceFree(self->a_mask);
         RrAppearanceFree(self->a_text_normal);
-        RrAppearanceFree(self->a_text_disabled);
         RrAppearanceFree(self->a_text_selected);
+        RrAppearanceFree(self->a_text_disabled);
+        RrAppearanceFree(self->a_text_disabled_selected);
         RrAppearanceFree(self->a_text_title);
         RrAppearanceFree(self->a_bullet_normal);
         RrAppearanceFree(self->a_bullet_selected);
@@ -338,12 +344,14 @@ static void menu_entry_frame_render(ObMenuEntryFrame *self)
     switch (self->entry->type) {
     case OB_MENU_ENTRY_TYPE_NORMAL:
     case OB_MENU_ENTRY_TYPE_SUBMENU:
-        item_a = ((self->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
-                   !self->entry->data.normal.enabled) ?
-                  self->a_disabled :
+        item_a = (self->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
+                  !self->entry->data.normal.enabled ?
+                  /* disabled */
                   (self == self->frame->selected ?
-                   self->a_selected :
-                   self->a_normal));
+                   self->a_disabled_selected : self->a_disabled) :
+                  /* enabled */
+                  (self == self->frame->selected ?
+                   self->a_selected : self->a_normal));
         th = self->frame->item_h;
         break;
     case OB_MENU_ENTRY_TYPE_SEPARATOR:
@@ -368,11 +376,14 @@ static void menu_entry_frame_render(ObMenuEntryFrame *self)
 
     switch (self->entry->type) {
     case OB_MENU_ENTRY_TYPE_NORMAL:
-        text_a = (!self->entry->data.normal.enabled ?
-                  self->a_text_disabled :
+        text_a = (self->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
+                  !self->entry->data.normal.enabled ?
+                  /* disabled */
+                  (self == self->frame->selected ?
+                   self->a_text_disabled_selected : self->a_text_disabled) :
+                  /* enabled */
                   (self == self->frame->selected ?
-                   self->a_text_selected :
-                   self->a_text_normal));
+                   self->a_text_selected : self->a_text_normal));
         text_a->texture[0].data.text.string = self->entry->data.normal.label;
         if (self->entry->data.normal.shortcut &&
             (self->frame->menu->show_all_shortcuts ||
@@ -502,9 +513,13 @@ static void menu_entry_frame_render(ObMenuEntryFrame *self)
         self->a_mask->texture[0].data.mask.mask =
             self->entry->data.normal.mask;
 
-        c = ((self->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
-              !self->entry->data.normal.enabled) ?
-             self->entry->data.normal.mask_disabled_color :
+        c = (self->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
+             !self->entry->data.normal.enabled ?
+             /* disabled */
+             (self == self->frame->selected ?
+              self->entry->data.normal.mask_disabled_selected_color :
+              self->entry->data.normal.mask_disabled_color) :
+             /* enabled */
              (self == self->frame->selected ?
               self->entry->data.normal.mask_selected_color :
               self->entry->data.normal.mask_normal_color));
@@ -592,6 +607,12 @@ static void menu_frame_render(ObMenuFrame *self)
                   MAX(self->item_margin.top, t),
                   MAX(self->item_margin.right, r),
                   MAX(self->item_margin.bottom, b));
+        RrMargins(e->a_disabled_selected, &l, &t, &r, &b);
+        STRUT_SET(self->item_margin,
+                  MAX(self->item_margin.left, l),
+                  MAX(self->item_margin.top, t),
+                  MAX(self->item_margin.right, r),
+                  MAX(self->item_margin.bottom, b));
     } else
         self->item_h = 0;
 
@@ -622,12 +643,15 @@ static void menu_frame_render(ObMenuFrame *self)
         XSetWindowBorder(ob_display, e->window,
                          RrColorPixel(ob_rr_theme->menu_b_color));
 
-        text_a = ((e->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
-                   !e->entry->data.normal.enabled) ?
-                  e->a_text_disabled :
+
+        text_a = (e->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
+                  !e->entry->data.normal.enabled ?
+                  /* disabled */
+                  (e == self->selected ?
+                   e->a_text_disabled_selected : e->a_text_disabled) :
+                  /* enabled */
                   (e == self->selected ?
-                   e->a_text_selected :
-                   e->a_text_normal));
+                   e->a_text_selected : e->a_text_normal));
         switch (e->entry->type) {
         case OB_MENU_ENTRY_TYPE_NORMAL:
             text_a->texture[0].data.text.string = e->entry->data.normal.label;
@@ -1045,8 +1069,7 @@ void menu_frame_select_previous(ObMenuFrame *self)
                 e = it->data;
                 if (e->entry->type == OB_MENU_ENTRY_TYPE_SUBMENU)
                     break;
-                if (e->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
-                    e->entry->data.normal.enabled)
+                if (e->entry->type == OB_MENU_ENTRY_TYPE_NORMAL)
                     break;
             }
         }
@@ -1071,8 +1094,7 @@ void menu_frame_select_next(ObMenuFrame *self)
                 e = it->data;
                 if (e->entry->type == OB_MENU_ENTRY_TYPE_SUBMENU)
                     break;
-                if (e->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
-                    e->entry->data.normal.enabled)
+                if (e->entry->type == OB_MENU_ENTRY_TYPE_NORMAL)
                     break;
             }
         }
index 5c87683..15bae66 100644 (file)
@@ -88,8 +88,9 @@ struct _ObMenuEntryFrame
     Window bullet;
 
     RrAppearance *a_normal;
-    RrAppearance *a_disabled;
     RrAppearance *a_selected;
+    RrAppearance *a_disabled;
+    RrAppearance *a_disabled_selected;
 
     RrAppearance *a_icon;
     RrAppearance *a_mask;
@@ -97,8 +98,9 @@ struct _ObMenuEntryFrame
     RrAppearance *a_bullet_selected;
     RrAppearance *a_separator;
     RrAppearance *a_text_normal;
-    RrAppearance *a_text_disabled;
     RrAppearance *a_text_selected;
+    RrAppearance *a_text_disabled;
+    RrAppearance *a_text_disabled_selected;
     RrAppearance *a_text_title;
 };
 
index cb50887..28a682b 100644 (file)
@@ -123,10 +123,12 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
     theme->a_menu_text_title = RrAppearanceNew(inst, 1);
     theme->a_menu_normal = RrAppearanceNew(inst, 0);
     theme->a_menu_disabled = RrAppearanceNew(inst, 0);
+    theme->a_menu_disabled_selected = RrAppearanceNew(inst, 0);
     theme->a_menu_selected = RrAppearanceNew(inst, 0);
     theme->a_menu_text_normal = RrAppearanceNew(inst, 1);
-    theme->a_menu_text_disabled = RrAppearanceNew(inst, 1);
     theme->a_menu_text_selected = RrAppearanceNew(inst, 1);
+    theme->a_menu_text_disabled = RrAppearanceNew(inst, 1);
+    theme->a_menu_text_disabled_selected = RrAppearanceNew(inst, 1);
     theme->a_menu_bullet_normal = RrAppearanceNew(inst, 1);
     theme->a_menu_bullet_selected = RrAppearanceNew(inst, 1);
     theme->a_clear = RrAppearanceNew(inst, 0);
@@ -299,17 +301,17 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
               &theme->titlebut_toggled_focused_unpressed_color, NULL))
         theme->titlebut_toggled_focused_unpressed_color =
             RrColorNew(inst,
-                       theme->titlebut_focused_unpressed_color->r,
-                       theme->titlebut_focused_unpressed_color->g,
-                       theme->titlebut_focused_unpressed_color->b);
+                       theme->titlebut_focused_pressed_color->r,
+                       theme->titlebut_focused_pressed_color->g,
+                       theme->titlebut_focused_pressed_color->b);
     if (!FIND(color,
               L("window","inactive","buttons","toggled-unpressed","image"),
               &theme->titlebut_toggled_unfocused_unpressed_color, NULL))
         theme->titlebut_toggled_unfocused_unpressed_color =
             RrColorNew(inst,
-                       theme->titlebut_unfocused_unpressed_color->r,
-                       theme->titlebut_unfocused_unpressed_color->g,
-                       theme->titlebut_unfocused_unpressed_color->b);
+                       theme->titlebut_unfocused_pressed_color->r,
+                       theme->titlebut_unfocused_pressed_color->g,
+                       theme->titlebut_unfocused_pressed_color->b);
     if (!FIND(color,
               L("window","active","buttons","toggled-hover","image"),
               &theme->titlebut_toggled_hover_focused_color, NULL))
@@ -334,6 +336,13 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
     if (!FIND(color, L("menu","disabled","primary"),
               &theme->menu_disabled_color, NULL))
         theme->menu_disabled_color = RrColorNew(inst, 0, 0, 0);
+    if (!FIND(color, L("menu","activedisabled","text","primary"),
+              &theme->menu_disabled_selected_color, NULL))
+        theme->menu_disabled_selected_color =
+            RrColorNew(inst,
+                       theme->menu_disabled_color->r,
+                       theme->menu_disabled_color->g,
+                       theme->menu_disabled_color->b);
     if (!FIND(color, L("menu","active","text","primary"),
               &theme->menu_selected_color, NULL))
         theme->menu_selected_color = RrColorNew(inst, 0, 0, 0);
@@ -392,6 +401,17 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
         theme->menu_text_disabled_shadow_alpha = 
             theme->menu_text_normal_shadow_alpha;
     }
+    if (!FIND(color, L("menu","activedisabled","shadow","primary"),
+              &theme->menu_text_disabled_selected_shadow_color,
+              &theme->menu_text_disabled_selected_shadow_alpha))
+    {
+        theme->menu_text_disabled_selected_shadow_color =
+            RrColorNew(inst, theme->menu_text_disabled_shadow_color->r,
+                       theme->menu_text_disabled_shadow_color->g,
+                       theme->menu_text_disabled_shadow_color->b);
+        theme->menu_text_disabled_selected_shadow_alpha = 
+            theme->menu_text_disabled_shadow_alpha;
+    }
     
     /* load the image masks */
     if (read_mask(&ps, "max.xbm", &theme->max_mask)) {
@@ -582,6 +602,10 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
         set_default_appearance(theme->a_menu_title);
     if (!FIND(appearance, L("menu", "active"), theme->a_menu_selected, TRUE))
         set_default_appearance(theme->a_menu_selected);
+    if (!FIND(appearance, L("menu", "activedisabled"),
+              theme->a_menu_disabled_selected, TRUE))
+        theme->a_menu_disabled_selected =
+            RrAppearanceCopy(theme->a_menu_selected);
 
     /* read the appearances for rendering non-decorations */
     theme->osd_hilite_bg = RrAppearanceCopy(theme->a_focused_title);
@@ -647,28 +671,28 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
     {
         RrAppearanceFree(theme->a_toggled_focused_unpressed_max);
         theme->a_toggled_focused_unpressed_max =
-            RrAppearanceCopy(theme->a_focused_unpressed_max);
+            RrAppearanceCopy(theme->a_focused_pressed_max);
     }
     if (!FIND(appearance, L("window","inactive","buttons","toggled-unpressed"),
               theme->a_toggled_unfocused_unpressed_max, TRUE))
     {
         RrAppearanceFree(theme->a_toggled_unfocused_unpressed_max);
         theme->a_toggled_unfocused_unpressed_max =
-            RrAppearanceCopy(theme->a_unfocused_unpressed_max);
+            RrAppearanceCopy(theme->a_unfocused_pressed_max);
     }
     if (!FIND(appearance, L("window","active","buttons","toggled-hover"),
               theme->a_toggled_hover_focused_max, TRUE))
     {
         RrAppearanceFree(theme->a_toggled_hover_focused_max);
         theme->a_toggled_hover_focused_max =
-            RrAppearanceCopy(theme->a_toggled_focused_unpressed_max);
+            RrAppearanceCopy(theme->a_toggled_focused_pressed_max);
     }
     if (!FIND(appearance, L("window","inactive","buttons","toggled-hover"),
               theme->a_toggled_hover_unfocused_max, TRUE))
     {
         RrAppearanceFree(theme->a_toggled_hover_unfocused_max);
         theme->a_toggled_hover_unfocused_max =
-            RrAppearanceCopy(theme->a_toggled_unfocused_unpressed_max);
+            RrAppearanceCopy(theme->a_toggled_unfocused_pressed_max);
     }
 
    theme->a_disabled_focused_close =
@@ -767,8 +791,9 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
         theme->a_menu_normal->surface.grad =
         theme->a_menu_disabled->surface.grad =
         theme->a_menu_text_normal->surface.grad =
-        theme->a_menu_text_disabled->surface.grad =
         theme->a_menu_text_selected->surface.grad =
+        theme->a_menu_text_disabled->surface.grad =
+        theme->a_menu_text_disabled_selected->surface.grad =
         theme->a_menu_bullet_normal->surface.grad =
         theme->a_menu_bullet_selected->surface.grad = RR_SURFACE_PARENTREL;
 
@@ -840,21 +865,27 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
         theme->menu_title_shadow_alpha;
 
     theme->a_menu_text_normal->texture[0].type =
+        theme->a_menu_text_selected->texture[0].type =
         theme->a_menu_text_disabled->texture[0].type = 
-        theme->a_menu_text_selected->texture[0].type = RR_TEXTURE_TEXT;
+        theme->a_menu_text_disabled_selected->texture[0].type = 
+        RR_TEXTURE_TEXT;
     theme->a_menu_text_normal->texture[0].data.text.justify = 
-        theme->a_menu_text_disabled->texture[0].data.text.justify = 
         theme->a_menu_text_selected->texture[0].data.text.justify =
+        theme->a_menu_text_disabled->texture[0].data.text.justify = 
+        theme->a_menu_text_disabled_selected->texture[0].data.text.justify = 
         RR_JUSTIFY_LEFT;
     theme->a_menu_text_normal->texture[0].data.text.font =
-        theme->a_menu_text_disabled->texture[0].data.text.font =
         theme->a_menu_text_selected->texture[0].data.text.font =
+        theme->a_menu_text_disabled->texture[0].data.text.font =
+        theme->a_menu_text_disabled_selected->texture[0].data.text.font =
         theme->menu_font;
     theme->a_menu_text_normal->texture[0].data.text.color = theme->menu_color;
-    theme->a_menu_text_disabled->texture[0].data.text.color =
-        theme->menu_disabled_color;
     theme->a_menu_text_selected->texture[0].data.text.color =
         theme->menu_selected_color;
+    theme->a_menu_text_disabled->texture[0].data.text.color =
+        theme->menu_disabled_color;
+    theme->a_menu_text_disabled_selected->texture[0].data.text.color =
+        theme->menu_disabled_selected_color;
 
     if (!FIND(shadow, L("menu","inactive","shadow","offset"),
               theme->a_menu_text_normal))
@@ -871,6 +902,12 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
         theme->a_menu_text_disabled->texture[0].data.text.shadow_offset_x =
             theme->a_menu_text_disabled->texture[0].data.text.shadow_offset_y =
             0;
+    if (!FIND(shadow, L("menu","activedisabled","shadow","offset"),
+              theme->a_menu_text_disabled_selected))
+        theme->a_menu_text_disabled_selected->
+            texture[0].data.text.shadow_offset_x = 0;
+    theme->a_menu_text_disabled_selected->
+        texture[0].data.text.shadow_offset_y = 0;
     theme->a_menu_text_normal->texture[0].data.text.shadow_color =
         theme->menu_text_normal_shadow_color;
     theme->a_menu_text_normal->texture[0].data.text.shadow_alpha =
@@ -883,6 +920,10 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
         theme->menu_text_disabled_shadow_color;
     theme->a_menu_text_disabled->texture[0].data.text.shadow_alpha =
         theme->menu_text_disabled_shadow_alpha;
+    theme->a_menu_text_disabled_selected->texture[0].data.text.shadow_color =
+        theme->menu_text_disabled_selected_shadow_color;
+    theme->a_menu_text_disabled_selected->texture[0].data.text.shadow_alpha =
+        theme->menu_text_disabled_selected_shadow_alpha;
 
     theme->a_disabled_focused_max->texture[0].type = 
         theme->a_disabled_unfocused_max->texture[0].type = 
@@ -1119,7 +1160,7 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
 
     {
         gint ft, fb, fl, fr, ut, ub, ul, ur;
-        RrAppearance *a, *b, *c;
+        RrAppearance *a, *b, *c, *d;
 
         /* caluclate the font heights*/
         a = theme->a_focused_label;
@@ -1138,11 +1179,14 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
         a = theme->a_menu_text_normal;
         b = theme->a_menu_text_selected;
         c = theme->a_menu_text_disabled;
+        d = theme->a_menu_text_disabled_selected;
         theme->menu_font_height =
             RrFontHeight(theme->menu_font,
                          MAX(a->texture[0].data.text.shadow_offset_y,
                              MAX(b->texture[0].data.text.shadow_offset_y,
-                                 c->texture[0].data.text.shadow_offset_y)));
+                                 MAX(c->texture[0].data.text.shadow_offset_y,
+                                     d->texture[0].data.text.shadow_offset_y
+                                     ))));
 
         RrMargins(theme->a_focused_label, &fl, &ft, &fr, &fb);
         RrMargins(theme->a_unfocused_label, &ul, &ut, &ur, &ub);
@@ -1196,8 +1240,9 @@ void RrThemeFree(RrTheme *theme)
         RrColorFree(theme->titlebut_toggled_unfocused_unpressed_color);
         RrColorFree(theme->menu_title_color);
         RrColorFree(theme->menu_color);
-        RrColorFree(theme->menu_disabled_color);
         RrColorFree(theme->menu_selected_color);
+        RrColorFree(theme->menu_disabled_color);
+        RrColorFree(theme->menu_disabled_selected_color);
         RrColorFree(theme->title_focused_shadow_color);
         RrColorFree(theme->title_unfocused_shadow_color);
         RrColorFree(theme->osd_color);
@@ -1206,6 +1251,7 @@ void RrThemeFree(RrTheme *theme)
         RrColorFree(theme->menu_text_normal_shadow_color);
         RrColorFree(theme->menu_text_selected_shadow_color);
         RrColorFree(theme->menu_text_disabled_shadow_color);
+        RrColorFree(theme->menu_text_disabled_selected_shadow_color);
 
         g_free(theme->def_win_icon);
 
@@ -1310,11 +1356,13 @@ void RrThemeFree(RrTheme *theme)
         RrAppearanceFree(theme->a_menu_title);
         RrAppearanceFree(theme->a_menu_text_title);
         RrAppearanceFree(theme->a_menu_normal);
-        RrAppearanceFree(theme->a_menu_disabled);
         RrAppearanceFree(theme->a_menu_selected);
+        RrAppearanceFree(theme->a_menu_disabled);
+        RrAppearanceFree(theme->a_menu_disabled_selected);
         RrAppearanceFree(theme->a_menu_text_normal);
-        RrAppearanceFree(theme->a_menu_text_disabled);
         RrAppearanceFree(theme->a_menu_text_selected);
+        RrAppearanceFree(theme->a_menu_text_disabled);
+        RrAppearanceFree(theme->a_menu_text_disabled_selected);
         RrAppearanceFree(theme->a_menu_bullet_normal);
         RrAppearanceFree(theme->a_menu_bullet_selected);
         RrAppearanceFree(theme->a_clear);
index b0caa17..3359d04 100644 (file)
@@ -78,8 +78,9 @@ struct _RrTheme {
     RrColor *titlebut_unfocused_unpressed_color;
     RrColor *menu_title_color;
     RrColor *menu_color;
-    RrColor *menu_disabled_color;
     RrColor *menu_selected_color;
+    RrColor *menu_disabled_color;
+    RrColor *menu_disabled_selected_color;
     RrColor *title_focused_shadow_color;
     gchar    title_focused_shadow_alpha;
     RrColor *title_unfocused_shadow_color;
@@ -95,6 +96,8 @@ struct _RrTheme {
     gchar    menu_text_selected_shadow_alpha;
     RrColor *menu_text_disabled_shadow_color;
     gchar    menu_text_disabled_shadow_alpha;
+    RrColor *menu_text_disabled_selected_shadow_color;
+    gchar    menu_text_disabled_selected_shadow_alpha;
 
     /* style settings - pics */
     RrPixel32 *def_win_icon; /* 48x48 RGBA */
@@ -206,10 +209,12 @@ struct _RrTheme {
     RrAppearance *a_menu_title;
     RrAppearance *a_menu;
     RrAppearance *a_menu_normal;
-    RrAppearance *a_menu_disabled;
     RrAppearance *a_menu_selected;
+    RrAppearance *a_menu_disabled;
+    RrAppearance *a_menu_disabled_selected;
     RrAppearance *a_menu_text_normal;
     RrAppearance *a_menu_text_disabled;
+    RrAppearance *a_menu_text_disabled_selected;
     RrAppearance *a_menu_text_selected;
     RrAppearance *a_menu_bullet_normal;
     RrAppearance *a_menu_bullet_selected;
diff --git a/themes/Artwiz-boxed/openbox-3/bullet.xbm b/themes/Artwiz-boxed/openbox-3/bullet.xbm
deleted file mode 100644 (file)
index 5bab764..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-#define bullet_blank_width 7
-#define bullet_blank_height 7
-static unsigned char bullet_blank_bits[] = {
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
index 9c360b6..5ed3447 100644 (file)
       <primary r="16" g="32" b="48" a="255"/>
       <secondary r="112" g="128" b="144" a="255"/>
     </entries>
+    <activedisabled>
+      <style>raised gradient diagonal</style>
+      <primary r="144" g="148" b="152" a="255"/>
+      <secondary r="32" g="36" b="40" a="255"/>
+    </activedisabled>
   </menu>
 </openbox_theme>
index bda587d..3173853 100644 (file)
@@ -48,7 +48,7 @@
         </toggled-unpressed>
       </buttons>
       <titlebar>
-        <style>flat border gradient mirrorhorizontal</style>
+        <style>flat border gradient osx</style>
         <primary r="52" g="101" b="164" a="255"/>
         <secondary r="64" g="124" b="202" a="255"/>
         <border r="105" g="154" b="205" a="255"/>
@@ -97,7 +97,7 @@
         </toggled-unpressed>
       </buttons>
       <titlebar>
-        <style>flat border gradient mirrorhorizontal</style>
+        <style>flat border gradient osx</style>
         <primary r="220" g="220" b="220" a="255"/>
         <secondary r="238" g="238" b="236" a="255"/>
         <border r="239" g="239" b="239" a="255"/>
     <disabled>
       <primary r="186" g="189" b="182" a="255"/>
     </disabled>
+    <activedisabled>
+      <text>
+        <primary r="186" g="189" b="182" a="255"/>
+      </text>
+      <style>flat solid</style>
+      <primary r="68" g="129" b="192" a="255"/>
+      <secondary r="65" g="117" b="170" a="255"/>
+      <border r="65" g="108" b="152" a="255"/>
+    </activedisabled>
     <active>
       <text>
         <primary r="246" g="248" b="251" a="255"/>
index d2d9282..c57b26e 100644 (file)
       <primary r="68" g="68" b="68" a="255"/>
     </inactive>
     <disabled>
-      <primary r="153" g="153" b="153" a="255"/>
+      <primary r="170" g="170" b="170" a="255"/>
     </disabled>
+    <activedisabled>
+      <text>
+        <primary r="150" g="150" b="150" a="255"/>
+      </text>
+      <style>Flat Gradient Vertical Border</style>
+      <primary r="180" g="201" b="148" a="255"/>
+      <secondary r="146" g="170" b="109" a="255"/>
+      <border r="146" g="170" b="109" a="255"/>
+    </activedisabled>
     <active>
       <text>
         <primary r="255" g="255" b="255" a="255"/>
index aae4cae..f4ab5f8 100644 (file)
       <primary r="0" g="0" b="0" a="255"/>
     </inactive>
     <disabled>
-      <primary r="153" g="153" b="153" a="255"/>
+      <primary r="170" g="170" b="170" a="255"/>
     </disabled>
+    <activedisabled>
+      <text>
+        <primary r="170" g="170" b="170" a="255"/>
+      </text>
+      <style>Flat Gradient Vertical</style>
+      <primary r="98" g="140" b="178" a="255"/>
+      <secondary r="80" g="112" b="141" a="255"/>
+    </activedisabled>
     <active>
       <text>
         <primary r="255" g="255" b="255" a="255"/>
index 515015c..b1ee489 100644 (file)
@@ -12,7 +12,7 @@
     <clientpadding x="0" y="0"/>
     <justify>left</justify>
     <active>
-      <clientpadding r="128" g="128" b="160" a="255"/>
+      <clientpadding r="0" g="255" b="0" a="255"/>
       <label>
         <text>
           <primary r="191" g="233" b="255" a="255"/>
@@ -53,7 +53,7 @@
         </hover>
         <toggled-unpressed>
           <image r="217" g="217" b="217" a="255"/>
-          <style>sunken gradient crossdiagonal bevel2</style>
+          <style>sunken gradient crossdiagonal bevel1</style>
           <primary r="102" g="153" b="204" a="255"/>
           <secondary r="51" g="72" b="102" a="255"/>
           <border r="0" g="0" b="0" a="255"/>
@@ -82,7 +82,7 @@
       <clientpadding r="127" g="127" b="127" a="255"/>
       <label>
         <text>
-          <primary r="195" g="195" b="224" a="255"/>
+          <primary r="179" g="179" b="179" a="255"/>
           <shadow>
             <offset x="3" y="3"/>
             <primary r="0" g="0" b="0" a="81"/>
       </buttons>
       <titlebar>
         <style>flat gradient diagonal bevel1</style>
-        <primary r="127" g="127" b="160" a="255"/>
-        <secondary r="51" g="51" b="80" a="255"/>
+        <primary r="127" g="127" b="136" a="255"/>
+        <secondary r="51" g="51" b="59" a="255"/>
         <border r="0" g="0" b="0" a="255"/>
       </titlebar>
       <handle>
         <primary r="0" g="0" b="0" a="38"/>
       </shadow>
     </disabled>
+    <activedisabled>
+      <text>
+        <primary r="119" g="17" b="17" a="255"/>
+        <shadow>
+          <offset x="2" y="2"/>
+          <primary r="0" g="0" b="0" a="38"/>
+        </shadow>
+      </text>
+      <style>raised gradient horizontal bevel1</style>
+      <primary r="85" g="85" b="119" a="255"/>
+      <secondary r="102" g="153" b="204" a="255"/>
+      <border r="0" g="0" b="0" a="255"/>
+    </activedisabled>
     <active>
       <text>
         <primary r="204" g="204" b="255" a="255"/>
           <primary r="0" g="0" b="0" a="38"/>
         </shadow>
       </text>
-      <style>raised gradient mirrorhorizontal</style>
+      <style>raised gradient horizontal bevel1</style>
       <primary r="85" g="85" b="119" a="255"/>
       <secondary r="102" g="153" b="204" a="255"/>
       <border r="0" g="0" b="0" a="255"/>
     </active>
     <entries>
-      <style>flat gradient vertical bevel1</style>
-      <primary r="184" g="184" b="216" a="255"/>
-      <secondary r="160" g="160" b="186" a="255"/>
+      <style>flat gradient horizontal bevel1</style>
+      <primary r="170" g="170" b="204" a="255"/>
+      <secondary r="170" g="170" b="208" a="255"/>
       <border r="0" g="0" b="0" a="255"/>
     </entries>
   </menu>
index 5c12641..7ce66a8 100644 (file)
@@ -1,6 +1,4 @@
 <?xml version="1.0"?>
-<!-- Natura by quandar (http://deletefactory.net/quandar) -->
-
 <openbox_theme version="1" xmlns="http://openbox.org/themerc">
   <dimensions>
     <handle>2</handle>
@@ -57,7 +55,7 @@
         </toggled-unpressed>
       </buttons>
       <titlebar>
-        <style>flat gradient splitvertical</style>
+        <style>flat gradient split</style>
         <primary r="92" g="78" b="69" a="255"/>
         <secondary r="81" g="68" b="62" a="255"/>
         <border r="0" g="0" b="0" a="255"/>
           <primary r="0" g="0" b="0" a="191"/>
         </shadow>
       </text>
-      <style>flat gradient splitvertical</style>
+      <style>flat gradient split</style>
       <primary r="92" g="78" b="69" a="255"/>
       <secondary r="81" g="68" b="62" a="255"/>
     </title>
     <disabled>
       <primary r="115" g="117" b="115" a="255"/>
     </disabled>
+    <activedisabled>
+      <text>
+        <primary r="115" g="117" b="115" a="255"/>
+      </text>
+      <style>flat gradient split</style>
+      <primary r="92" g="78" b="69" a="255"/>
+      <secondary r="81" g="68" b="62" a="255"/>
+    </activedisabled>
     <active>
       <text>
         <primary r="249" g="242" b="238" a="255"/>
       </text>
-      <style>flat gradient splitvertical</style>
+      <style>flat gradient split</style>
       <primary r="92" g="78" b="69" a="255"/>
       <secondary r="81" g="68" b="62" a="255"/>
     </active>
index 84ded30..5f2e4ff 100644 (file)
@@ -1,6 +1,4 @@
 <?xml version="1.0"?>
-<!-- i be a mess -->
-
 <openbox_theme version="1" xmlns="http://openbox.org/themerc">
   <dimensions>
     <handle>3</handle>
     <disabled>
       <primary r="115" g="117" b="115" a="255"/>
     </disabled>
+    <activedisabled>
+      <text>
+        <primary r="115" g="117" b="115" a="255"/>
+      </text>
+      <style>flat solid</style>
+      <primary r="206" g="92" b="0" a="255"/>
+    </activedisabled>
     <active>
       <text>
         <primary r="255" g="255" b="255" a="255"/>
index bd8d15d..7e7462e 100644 (file)
@@ -1,14 +1,13 @@
 <?xml version="1.0"?>
-<!-- syscrash's theme, based off nightm4re's flax or something -->
 <openbox_theme version="1" xmlns="http://openbox.org/themerc">
   <dimensions>
     <handle>0</handle>
-    <padding x="2" y="2"/>
+    <padding x="1" y="1"/>
   </dimensions>
   <window>
     <border>
       <width>1</width>
-      <primary r="155" g="155" b="155" a="255"/>
+      <primary r="109" g="109" b="109" a="255"/>
     </border>
     <clientpadding x="0" y="0"/>
     <justify>left</justify>
@@ -17,6 +16,9 @@
       <label>
         <text>
           <primary r="255" g="255" b="255" a="255"/>
+          <shadow>
+            <offset x="1" y="1"/>
+          </shadow>
         </text>
         <style>flat gradient vertical border</style>
         <primary r="76" g="76" b="76" a="255"/>
@@ -30,7 +32,7 @@
           <secondary r="103" g="103" b="103" a="255"/>
         </unpressed>
         <disabled>
-          <image r="159" g="191" b="193" a="255"/>
+          <image r="140" g="140" b="117" a="255"/>
           <style>parentrelative</style>
         </disabled>
         <pressed>
         <primary r="155" g="155" b="155" a="255"/>
       </titlebar>
       <handle>
-        <style>flat solid</style>
+        <style>flat gradient crossdiagonal</style>
+        <primary r="211" g="222" b="218" a="255"/>
+        <secondary r="159" g="191" b="193" a="255"/>
       </handle>
       <grip>
         <style>flat solid</style>
-        <primary r="76" g="76" b="76" a="255"/>
-        <secondary r="112" g="112" b="112" a="255"/>
+        <primary r="159" g="191" b="193" a="255"/>
       </grip>
     </active>
     <inactive>
@@ -70,7 +73,8 @@
           <style>parentrelative</style>
         </unpressed>
         <disabled>
-          <style>flat solid</style>
+          <image r="140" g="140" b="117" a="255"/>
+          <style>parentrelative</style>
         </disabled>
         <pressed>
           <style>flat gradient crossdiagonal border</style>
   <menu>
     <border>
       <width>1</width>
-      <primary r="155" g="155" b="155" a="255"/>
+      <primary r="109" g="109" b="109" a="255"/>
     </border>
     <justify>left</justify>
     <overlap>0</overlap>
     <title>
       <text>
         <primary r="255" g="255" b="255" a="255"/>
+        <shadow>
+          <offset x="1" y="1"/>
+        </shadow>
       </text>
       <style>flat gradient vertical</style>
       <primary r="76" g="76" b="76" a="255"/>
       <primary r="34" g="34" b="28" a="255"/>
     </inactive>
     <disabled>
-      <primary r="68" g="68" b="56" a="255"/>
+      <primary r="140" g="140" b="117" a="255"/>
     </disabled>
+    <activedisabled>
+      <text>
+        <primary r="140" g="140" b="117" a="255"/>
+      </text>
+      <style>flat solid</style>
+      <primary r="76" g="76" b="76" a="255"/>
+    </activedisabled>
     <active>
       <text>
         <primary r="255" g="255" b="255" a="255"/>
index 77e91be..43cbd6f 100644 (file)
@@ -422,8 +422,10 @@ int main(int argc, char **argv)
         COLOR3("menu","inactive","primary",i,j,k,255);
 
     if (read_color(db, "menu.items.disabled.text.color",
-                   &i, &j, &k))
+                   &i, &j, &k)) {
         COLOR3("menu","disabled","primary",i,j,k,255);
+        COLOR4("menu","activedisabled","text","primary",i,j,k,255);
+    }
 
     if (read_color(db, "menu.items.active.text.color",
                    &i, &j, &k))
@@ -439,6 +441,7 @@ int main(int argc, char **argv)
     APPEARANCE3("window.inactive.grip.bg", "window", "inactive", "grip");
     APPEARANCE2("menu.items.bg", "menu", "entries");
     APPEARANCE2("menu.items.active.bg", "menu", "active");
+    APPEARANCE2("menu.items.active.bg", "menu", "activedisabled");
     APPEARANCE2("menu.title.bg", "menu", "title");
 
     APPEARANCE4("window.active.button.disabled.bg",
@@ -538,6 +541,8 @@ int main(int argc, char **argv)
             ATTR5("menu","active","text","shadow","offset","y",NUM(i));
             ATTR4("menu","disabled","shadow","offset","x",NUM(i));
             ATTR4("menu","disabled","shadow","offset","y",NUM(i));
+            ATTR5("menu","activedisabled","text","shadow","offset","x",NUM(i));
+            ATTR5("menu","activedisabled","text","shadow","offset","y",NUM(i));
         }
         if ((p = strstr(s, "shadowtint=")))
         {
@@ -547,6 +552,7 @@ int main(int argc, char **argv)
             COLOR4("menu","inactive","shadow","primary",j,j,j,i);
             COLOR5("menu","active","text","shadow","primary",j,j,j,i);
             COLOR4("menu","disabled","shadow","primary",j,j,j,i);
+            COLOR5("menu","activedisabled","text","shadow","primary",j,j,j,i);
         }
     }