X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=openbox%2Fevent.c;h=2d548d9e6d018fac18ee93bf82a727344f355966;hb=e6cc69ca04f6b275f56e1e0feef731518e0709a3;hp=79befa6625a9bcbffe0125d18616893a60a99003;hpb=d43a109ba2ffd1d6f3bbd42a93265143f0e56582;p=chaz%2Fopenbox diff --git a/openbox/event.c b/openbox/event.c index 79befa66..2d548d9e 100644 --- a/openbox/event.c +++ b/openbox/event.c @@ -222,8 +222,10 @@ void event_process(XEvent *e) event_lasttime = e->xproperty.time; break; case FocusIn: +#ifdef DEBUG_FOCUS g_message("FocusIn on %lx mode %d detail %d", window, e->xfocus.mode, e->xfocus.detail); +#endif /* NotifyAncestor is not ignored in FocusIn like it is in FocusOut because of RevertToPointerRoot. If the focus ends up reverting to pointer root on a workspace change, then the FocusIn event that we @@ -240,17 +242,23 @@ void event_process(XEvent *e) return; } +#ifdef DEBUG_FOCUS g_message("FocusIn on %lx", window); +#endif break; case FocusOut: +#ifdef DEBUG_FOCUS g_message("FocusOut on %lx mode %d detail %d", window, e->xfocus.mode, e->xfocus.detail); +#endif if (e->xfocus.mode == NotifyGrab || e->xfocus.detail == NotifyInferior || e->xfocus.detail == NotifyAncestor || e->xfocus.detail > NotifyNonlinearVirtual) return; - - g_message("FocusOut on %lx", window); + +#ifdef DEBUG_FOCUS + g_message("FocusOut on %lx", window); +#endif /* Try process a FocusIn first, and if a legit one isn't found, then do the fallback shiznit. */ { @@ -360,8 +368,10 @@ static void event_handle_client(Client *client, XEvent *e) case FocusIn: focus_set_client(client); case FocusOut: +#ifdef DEBUG_FOCUS g_message("Focus%s on client for %lx", (e->type==FocusIn?"In":"Out"), client->window); +#endif /* focus state can affect the stacking layer */ client_calc_layer(client); engine_frame_adjust_focus(client->frame);