all repos — openbox @ b6e3e1bc7e929200fc2c4bc744be2c1e2b80ecf6

openbox fork - make it a bit more like ryudo

unhilite the entry for the submenu when it is closed
Dana Jansens danakj@orodu.net
commit

b6e3e1bc7e929200fc2c4bc744be2c1e2b80ecf6

parent

3578c18521c394555e65c6126d7ae0e126af7cf6

1 files changed, 15 insertions(+), 6 deletions(-)

jump to
M openbox/menu.copenbox/menu.c

@@ -40,11 +40,10 @@ goto parse_menu_fail;

g_message("menu label %s", title); if (parse_attr_string("plugin", node, &plugin)) { - PluginMenuCreateData data = { - .doc = doc, - .node = node, - .parent = menu - }; + PluginMenuCreateData data; + data.doc = doc; + data.node = node; + data.parent = menu; parent = plugin_create(plugin, &data); g_free(plugin); } else

@@ -367,8 +366,18 @@ XUnmapWindow(ob_display, self->frame);

self->shown = FALSE; if (self->open_submenu) menu_hide(self->open_submenu); - if (self->parent && self->parent->open_submenu == self) + if (self->parent && self->parent->open_submenu == self) { + ObMenuEntry *e; + self->parent->open_submenu = NULL; + + e = menu_find_entry_by_submenu(self->parent, self); + if (self->parent->mouseover) + self->parent->mouseover(e, FALSE); + else + menu_control_mouseover(e, FALSE); + menu_entry_render(e); + } if (!(self->parent && self->parent->shown)) { grab_keyboard(FALSE);