summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--openbox/stacking.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/openbox/stacking.c b/openbox/stacking.c
index 2a57e1a3..287de4f0 100644
--- a/openbox/stacking.c
+++ b/openbox/stacking.c
@@ -245,15 +245,18 @@ static GList *pick_group_windows(ObClient *top, ObClient *selected,
next = g_list_next(it);
if ((sit = g_slist_find(top->group->members, it->data))) {
+ ObClient *c;
ObClientType t;
++i;
-
- t = ((ObClient*)it->data)->type;
-
- if (t == OB_CLIENT_TYPE_TOOLBAR ||
- t == OB_CLIENT_TYPE_MENU ||
- t == OB_CLIENT_TYPE_UTILITY)
+ c = it->data;
+ t = c->type;
+
+ if ((c->desktop == selected->desktop ||
+ c->desktop == DESKTOP_ALL) &&
+ (t == OB_CLIENT_TYPE_TOOLBAR ||
+ t == OB_CLIENT_TYPE_MENU ||
+ t == OB_CLIENT_TYPE_UTILITY))
{
ret = g_list_concat(ret,
pick_windows(sit->data,