X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=openbox%2Fevent.c;h=3abaa675e1428fe54a1e0c64882aea1f2a3680e7;hb=a7bbdf7d6199d1289f5ecc1b4e25632d88d75387;hp=a487e1b8fb9bc8ade4f2b5236eb17db4ca79b6c8;hpb=04bf68c2acab42a5d0922d99daffee749d800690;p=chaz%2Fopenbox diff --git a/openbox/event.c b/openbox/event.c index a487e1b8..3abaa675 100644 --- a/openbox/event.c +++ b/openbox/event.c @@ -652,9 +652,11 @@ static void event_process(const XEvent *ec, gpointer data) /* keyboard layout changes for modifier mapping changes. reload the modifier map, and rebind all the key bindings as appropriate */ ob_debug("Kepboard map changed. Reloading keyboard bindings.\n"); + ob_set_state(OB_STATE_RECONFIGURING); modkeys_shutdown(TRUE); modkeys_startup(TRUE); keyboard_rebind(); + ob_set_state(OB_STATE_RUNNING); } else if (e->type == ClientMessage) { /* This is for _NET_WM_REQUEST_FRAME_EXTENTS messages. They come for @@ -1112,7 +1114,6 @@ static void event_handle_client(ObClient *client, XEvent *e) move = TRUE; } - if (e->xconfigurerequest.value_mask & CWStackMode) { ObClient *sibling = NULL; gulong ignore_start; @@ -1682,7 +1683,8 @@ static gboolean event_handle_menu_keyboard(XEvent *ev) else if (keycode == ob_keycode(OB_KEY_LEFT)) { /* Left goes to the parent menu */ - menu_frame_select(frame, NULL, TRUE); + if (frame->parent) + menu_frame_select(frame, NULL, TRUE); ret = TRUE; }