Improve menu behaviour when clicking on grandparents. Some time ago the menus were changed to not trigger on mouseover on a grandparent or higher so that you wouldn't lose a carefully navigated menu structure. Clicking on an item opens it though. It used to be on ButtonRelease but now it is on ButtonPress. Additionally, a Press now causes grandchildren to be closed when clicking on already selected parts of the hierarchy.
Mikael Magnusson mikachu@comhem.se
1 files changed,
6 insertions(+),
3 deletions(-)
jump to
M
openbox/event.c
→
openbox/event.c
@@ -1701,7 +1701,7 @@ static gboolean event_handle_menu_input(XEvent *ev)
{ gboolean ret = FALSE; - if (ev->type == ButtonRelease) { + if (ev->type == ButtonRelease || ev->type == ButtonPress) { ObMenuEntryFrame *e; if (menu_hide_delay_reached() &&@@ -1710,10 +1710,13 @@ {
if ((e = menu_entry_frame_under(ev->xbutton.x_root, ev->xbutton.y_root))) { + if (ev->type == ButtonPress && e->frame->child) + menu_frame_select(e->frame->child, NULL, TRUE); menu_frame_select(e->frame, e, TRUE); - menu_entry_frame_execute(e, ev->xbutton.state); + if (ev->type == ButtonRelease) + menu_entry_frame_execute(e, ev->xbutton.state); } - else + else if (ev->type == ButtonRelease) menu_frame_hide_all(); } ret = TRUE;