X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fevent.c;h=2a47ef091c7ed264df5162bdea98bb9156fe9fe9;hb=d3dd25a55cf7e1837eaf45b04ed2d20392eb559b;hp=e9e85f0be2c3ef7efbc576f9955573aba888aa57;hpb=7af1c6a9c3a57f3ded34fad3f9f4a30fe377a65e;p=chaz%2Fopenbox diff --git a/openbox/event.c b/openbox/event.c index e9e85f0b..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; @@ -1042,9 +1052,10 @@ static void event_handle_menu(Client *client, XEvent *e) if (over->parent->mouseover) over->parent->mouseover(over, FALSE); else - menu_control_mouseover(over, FALSE); + menu_control_mouseover(over, FALSE); + menu_entry_render(over); + over = NULL; } - menu_entry_render(over); /* if (top->hide) top->hide(top);