diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-05-11 20:19:00 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-05-11 20:19:00 +0000 |
| commit | 7e9ad375873a94f89b3894814ed61b0e24bd45a5 (patch) | |
| tree | 1c50eb6f8efbefb86d3359e970aea6b95d2facc1 /openbox | |
| parent | 81cc0749f8fe6e5a1f3474c07b26de2c49648526 (diff) | |
not everything in the stacking_list is a client anymore
Diffstat (limited to 'openbox')
| -rw-r--r-- | openbox/screen.c | 32 |
1 files changed, 20 insertions, 12 deletions
diff --git a/openbox/screen.c b/openbox/screen.c index b43be922..6a300d89 100644 --- a/openbox/screen.c +++ b/openbox/screen.c @@ -296,16 +296,20 @@ void screen_set_desktop(guint num) /* 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 @@ void screen_show_desktop(gboolean show) 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); + } } } |
