]> Dogcows Code - chaz/openbox/blobdiff - openbox/event.c
reconfigure openbox when the input mapping changes, eg. keyboard layout or modifier map
[chaz/openbox] / openbox / event.c
index 822168f493999e354f02fa4f0c2e191fa2313d3e..41bcd350b3b9cfd01fba02dda297b06546f62c45 100644 (file)
@@ -619,6 +619,11 @@ static void event_process(const XEvent *ec, gpointer data)
         event_handle_root(e);
     else if (e->type == MapRequest)
         client_manage(window);
+    else if (e->type == MappingNotify) {
+        /* keyboard layout changes, reconfigure openbox. need to restart the
+           modkeys system, but also to reload the key bindings. */
+        ob_reconfigure();
+    }
     else if (e->type == ClientMessage) {
         /* This is for _NET_WM_REQUEST_FRAME_EXTENTS messages. They come for
            windows that are not managed yet. */
@@ -718,6 +723,8 @@ static void event_handle_root(XEvent *e)
                 ob_reconfigure();
             else if (e->xclient.data.l[0] == 2)
                 ob_restart();
+            else if (e->xclient.data.l[0] == 3)
+                ob_exit(0);
         }
         break;
     case PropertyNotify:
This page took 0.020115 seconds and 4 git commands to generate.