X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fevent.c;h=746be2c4f7aa4e7016cc6a228fea8304bfc2764d;hb=1c98d2e3a6c721e9b2c7ce9a4343d06e4f714261;hp=fd12c25fe61bf5fe45db0ed55732d86fbfa64bef;hpb=9713a629d77ec43d98d8fba256fbdbcd3b9c46c8;p=chaz%2Fopenbox diff --git a/openbox/event.c b/openbox/event.c index fd12c25f..746be2c4 100644 --- a/openbox/event.c +++ b/openbox/event.c @@ -257,12 +257,6 @@ static void event_hack_mods(XEvent *e) break; case KeyRelease: e->xkey.state = modkeys_only_modifier_masks(e->xkey.state); -#ifdef XKB - if (XkbGetState(ob_display, XkbUseCoreKbd, &xkb_state) == Success) { - e->xkey.state = xkb_state.compat_state; - break; - } -#endif /* remove from the state the mask of the modifier key being released, if it is a modifier key being released that is */ e->xkey.state &= ~modkeys_keycode_to_mask(e->xkey.keycode); @@ -1663,7 +1657,9 @@ static gboolean event_handle_menu_keyboard(XEvent *ev) get sent to the focused application. Allow ControlMask only, and don't bother if the menu is empty */ - else if ((state & ~ControlMask) == 0 && frame->entries) { + else if (ev->type == KeyRelease && (state & ~ControlMask) == 0 && + frame->entries) + { if (keycode == ob_keycode(OB_KEY_RETURN)) { /* Enter runs the active item or goes into the submenu. Control-Enter runs it without closing the menu. */ @@ -1925,6 +1921,10 @@ void event_cancel_all_key_grabs() menu_frame_hide_all(); ob_debug("KILLED open menus\n"); } + else if (moveresize_in_progress) { + moveresize_end(TRUE); + ob_debug("KILLED interactive moveresize\n"); + } else if (grab_on_keyboard()) { ungrab_keyboard(); ob_debug("KILLED active grab on keyboard\n");