all repos — openbox @ ca45916f77822dcd48a4d4f459c719e5e000a4b7

openbox fork - make it a bit more like ryudo

update engine last for focus events
Dana Jansens danakj@orodu.net
commit

ca45916f77822dcd48a4d4f459c719e5e000a4b7

parent

0edc14a4f92e34f5edcdb00898013206142ca71d

1 files changed, 7 insertions(+), 8 deletions(-)

jump to
M openbox/event.copenbox/event.c

@@ -241,6 +241,7 @@ /* XXX this caused problems before... but i don't remember why. hah.

so back it is. if problems arise again, then try filtering on the detail instead of the mode. */ if (e->xcrossing.mode != NotifyNormal) return; + g_print("%s\n", e->type == EnterNotify ? "EnterNotify":"LeaveNotify"); break; }

@@ -319,24 +320,22 @@ Atom msgtype;

switch (e->type) { case FocusIn: - client->focused = TRUE; - engine_frame_adjust_focus(client->frame); + if (focus_client != client) + focus_set_client(client); /* focus state can affect the stacking layer */ client_calc_layer(client); - if (focus_client != client) - focus_set_client(client); + engine_frame_adjust_focus(client->frame); break; case FocusOut: - client->focused = FALSE; - engine_frame_adjust_focus(client->frame); + if (focus_client == client) + focus_set_client(NULL); /* focus state can affect the stacking layer */ client_calc_layer(client); - if (focus_client == client) - focus_set_client(NULL); + engine_frame_adjust_focus(client->frame); break; case ConfigureRequest: g_message("ConfigureRequest for window %lx", client->window);