all repos — openbox @ e8ed8b3c2aa4304e218cce094b1aebe9368357fb

openbox fork - make it a bit more like ryudo

show windows before hiding when switching desktops
Dana Jansens danakj@orodu.net
commit

e8ed8b3c2aa4304e218cce094b1aebe9368357fb

parent

0a2aa0892473c9fc61bfedd753fbb136a3f7e864

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

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

@@ -278,18 +278,20 @@ PROP_SET32(ob_root, net_current_desktop, cardinal, num);

if (old == num) return; - /* hide windows from bottom to top */ - for (it = g_list_last(stacking_list); it != NULL; it = it->prev) { - Client *c = it->data; - if (c->frame->visible && !client_should_show(c)) - engine_frame_hide(c->frame); - } + /* show windows before hiding the rest to lessen the enter/leave events */ /* show windows from top to bottom */ for (it = stacking_list; it != NULL; it = it->next) { Client *c = it->data; if (!c->frame->visible && client_should_show(c)) engine_frame_show(c->frame); + } + + /* hide windows from bottom to top */ + for (it = g_list_last(stacking_list); it != NULL; it = it->prev) { + Client *c = it->data; + if (c->frame->visible && !client_should_show(c)) + engine_frame_hide(c->frame); } dispatch_ob(Event_Ob_Desktop, num, old);