From: Dana Jansens Date: Fri, 12 Feb 2010 18:31:49 +0000 (-0500) Subject: have obt refresh the xlib keyboard stuff on mappingnotify events X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fopenbox;a=commitdiff_plain;h=98c86118ca941d71c0c511c865d5913814012aed have obt refresh the xlib keyboard stuff on mappingnotify events --- diff --git a/obt/mainloop.c b/obt/mainloop.c index bf866aec..ebc9e96a 100644 --- a/obt/mainloop.c +++ b/obt/mainloop.c @@ -300,6 +300,9 @@ void obt_main_loop_run(ObtMainLoop *loop) do { XNextEvent(loop->display, &e); + if (e.type == MappingNotify) + XRefreshKeyboardMapping(&e.xmapping); + for (it = loop->x_handlers; it; it = g_slist_next(it)) { ObtMainLoopXHandlerType *h = it->data; h->func(&e, h->data); diff --git a/openbox/event.c b/openbox/event.c index 13fd3114..44a90f9b 100644 --- a/openbox/event.c +++ b/openbox/event.c @@ -638,7 +638,6 @@ static void event_process(const XEvent *ec, gpointer data) modifier map, and rebind all the key bindings as appropriate */ ob_debug("Keyboard map changed. Reloading keyboard bindings."); ob_set_state(OB_STATE_RECONFIGURING); - XRefreshKeyboardMapping(&e->xmapping); obt_keyboard_reload(); keyboard_rebind(); ob_set_state(OB_STATE_RUNNING);