]> Dogcows Code - chaz/openbox/blobdiff - openbox/menuframe.h
improve submenu hide delay
[chaz/openbox] / openbox / menuframe.h
index 069759721e0c0b8a437156d2afe9dc69f3d10464..62df87ca3263b5a8a9f8200db96e569e7cc2a5b2 100644 (file)
@@ -71,13 +71,18 @@ struct _ObMenuFrame
 
     gint monitor; /* monitor on which to show the menu in xinerama */
 
-    RrAppearance *a_title;
+    /* We make a copy of this for each menu, so that we don't have to re-render
+       the background of the entire menu each time we render an item inside it.
+    */
     RrAppearance *a_items;
 
     gboolean got_press; /* don't allow a KeyRelease event to run things in the
                            menu until it has seen a KeyPress.  this is to
                            avoid having the keybinding used to show the menu
                            end up running something inside the menu */
+    ObMenuEntryFrame * submenu_to_hide;  /* if exist (single!) submenu hide request
+               then this variable hold a copy of 'selected' field of the parent menu,
+               otherwice NULL */
 };
 
 struct _ObMenuEntryFrame
@@ -94,22 +99,6 @@ struct _ObMenuEntryFrame
     Window icon;
     Window text;
     Window bullet;
-
-    RrAppearance *a_normal;
-    RrAppearance *a_selected;
-    RrAppearance *a_disabled;
-    RrAppearance *a_disabled_selected;
-
-    RrAppearance *a_icon;
-    RrAppearance *a_mask;
-    RrAppearance *a_bullet_normal;
-    RrAppearance *a_bullet_selected;
-    RrAppearance *a_separator;
-    RrAppearance *a_text_normal;
-    RrAppearance *a_text_selected;
-    RrAppearance *a_text_disabled;
-    RrAppearance *a_text_disabled_selected;
-    RrAppearance *a_text_title;
 };
 
 extern GHashTable *menu_frame_map;
This page took 0.024911 seconds and 4 git commands to generate.