summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--openbox/event.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/openbox/event.c b/openbox/event.c
index 3ff1fd1d..2a47ef09 100644
--- a/openbox/event.c
+++ b/openbox/event.c
@@ -1001,6 +1001,7 @@ static void event_handle_menu(Client *client, XEvent *e)
else
menu_control_mouseover(over, FALSE);
menu_entry_render(over);
+ over = NULL;
}
/*
if (top->hide)
@@ -1032,6 +1033,15 @@ static void event_handle_menu(Client *client, XEvent *e)
m->location.x,
e->xbutton.y_root -
m->location.y))) {
+ if (over) {
+ if (over->parent->mouseover)
+ over->parent->mouseover(over, FALSE);
+ else
+ menu_control_mouseover(over, FALSE);
+ menu_entry_render(over);
+ over = NULL;
+ }
+ /* this hides the menu */
menu_entry_fire(entry);
}
break;
@@ -1044,6 +1054,7 @@ static void event_handle_menu(Client *client, XEvent *e)
else
menu_control_mouseover(over, FALSE);
menu_entry_render(over);
+ over = NULL;
}
/*
if (top->hide)