summaryrefslogtreecommitdiff
path: root/openbox/client_list_combined_menu.c
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2007-03-14 21:07:30 +0000
committerDana Jansens <danakj@orodu.net>2007-03-14 21:07:30 +0000
commitc80b496bf407d73bea169058abfcda44effad0dd (patch)
treefca8985046322baf23147257a0b325bfa30e1d34 /openbox/client_list_combined_menu.c
parent496c769fcec42dc3092a9f128d270ff1a4f2e64b (diff)
make focus_order into one long list instead of having one per desktop. this actually fixes bugs with omnipresent windows and adding desktops. it is just overall a little nicer i think.
also this is not tested. sorry if it breaks everything.
Diffstat (limited to 'openbox/client_list_combined_menu.c')
-rw-r--r--openbox/client_list_combined_menu.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/openbox/client_list_combined_menu.c b/openbox/client_list_combined_menu.c
index f590dc10..39a8e60b 100644
--- a/openbox/client_list_combined_menu.c
+++ b/openbox/client_list_combined_menu.c
@@ -55,9 +55,11 @@ static void self_update(ObMenuFrame *frame, gpointer data)
e->data.normal.label = g_strdup(screen_desktop_names[desktop]);
/* The one at the bottom will always have entries below it though */
menu_add_separator(menu, -1);
- for (it = focus_order[desktop], i = 0; it; it = g_list_next(it), ++i) {
+ for (it = focus_order, i = 0; it; it = g_list_next(it), ++i) {
ObClient *c = it->data;
- if (client_normal(c) && (!c->skip_taskbar || c->iconic)) {
+ if (client_normal(c) && (!c->skip_taskbar || c->iconic) &&
+ (c->desktop == desktop || c->desktop == DESKTOP_ALL))
+ {
GSList *acts = NULL;
ObAction* act;
const ObClientIcon *icon;