summaryrefslogtreecommitdiff
path: root/openbox/menu.c
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-05-11 19:50:30 +0000
committerDana Jansens <danakj@orodu.net>2003-05-11 19:50:30 +0000
commit81cc0749f8fe6e5a1f3474c07b26de2c49648526 (patch)
tree70092b9596646fdad857120f24ad36ddcba0ae7c /openbox/menu.c
parent58cfbb7f8419e084af6b6b8b00c88ed270c29e88 (diff)
Menus put themselves into the stacking list.
Clicking on the menu (but not on an entry) will raise it.
Diffstat (limited to 'openbox/menu.c')
-rw-r--r--openbox/menu.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/openbox/menu.c b/openbox/menu.c
index 7af380db..611a53bc 100644
--- a/openbox/menu.c
+++ b/openbox/menu.c
@@ -38,6 +38,8 @@ void menu_destroy_hash_value(Menu *self)
g_hash_table_remove(menu_map, &self->frame);
g_hash_table_remove(menu_map, &self->items);
+ stacking_remove(self);
+
appearance_free(self->a_title);
XDestroyWindow(ob_display, self->title);
XDestroyWindow(ob_display, self->frame);
@@ -197,6 +199,9 @@ Menu *menu_new_full(char *label, char *name, Menu *parent,
g_hash_table_insert(menu_map, &self->title, self);
g_hash_table_insert(menu_map, &self->items, self);
g_hash_table_insert(menu_hash, g_strdup(name), self);
+
+ stacking_add(self);
+
return self;
}
@@ -355,6 +360,7 @@ void menu_control_show(Menu *self, int x, int y, Client *client) {
stacking_raise(MENU_AS_WINDOW(self));
*/
XMapWindow(ob_display, self->frame);
+ stacking_raise(MENU_AS_WINDOW(self));
self->shown = TRUE;
} else if (self->shown && self->open_submenu) {
menu_hide(self->open_submenu);