all repos — openbox @ 7e9ad375873a94f89b3894814ed61b0e24bd45a5

openbox fork - make it a bit more like ryudo

not everything in the stacking_list is a client anymore
Dana Jansens danakj@orodu.net
commit

7e9ad375873a94f89b3894814ed61b0e24bd45a5

parent

81cc0749f8fe6e5a1f3474c07b26de2c49648526

1 files changed, 20 insertions(+), 12 deletions(-)

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

@@ -296,16 +296,20 @@ /* 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)) - frame_show(c->frame); + if (WINDOW_IS_CLIENT(it->data)) { + Client *c = it->data; + if (!c->frame->visible && client_should_show(c)) + 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)) - frame_hide(c->frame); + if (WINDOW_IS_CLIENT(it->data)) { + Client *c = it->data; + if (c->frame->visible && !client_should_show(c)) + frame_hide(c->frame); + } } /* focus the last focused window on the desktop, and ignore enter events

@@ -418,16 +422,20 @@

if (show) { /* bottom to top */ for (it = g_list_last(stacking_list); it != NULL; it = it->prev) { - Client *client = it->data; - if (client->frame->visible && !client_should_show(client)) - frame_hide(client->frame); + if (WINDOW_IS_CLIENT(it->data)) { + Client *client = it->data; + if (client->frame->visible && !client_should_show(client)) + frame_hide(client->frame); + } } } else { /* top to bottom */ for (it = stacking_list; it != NULL; it = it->next) { - Client *client = it->data; - if (!client->frame->visible && client_should_show(client)) - frame_show(client->frame); + if (WINDOW_IS_CLIENT(it->data)) { + Client *client = it->data; + if (!client->frame->visible && client_should_show(client)) + frame_show(client->frame); + } } }