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);
+ if (ev->type == ButtonPress) {
+ /* We know this is a new press, so we don't have to
+ * block release events anymore */
+ menu_hide_delay_reset();
+
+ if (e->frame->child)
+ menu_frame_select(e->frame->child, NULL, TRUE);
+ }
menu_frame_select(e->frame, e, TRUE);
if (ev->type == ButtonRelease)
menu_entry_frame_execute(e, ev->xbutton.state);
if (client_focus(d->client) && config_focus_raise)
stacking_raise(CLIENT_AS_WINDOW(d->client));
event_curtime = old;
+
return FALSE; /* no repeat */
}
event_curserial = d->serial;
focus_nothing();
event_curtime = old;
+
return FALSE; /* no repeat */
}