summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2007-06-07 03:25:15 +0000
committerDana Jansens <danakj@orodu.net>2007-06-07 03:25:15 +0000
commit7a33207a50c983fe49d16d8d6acd62787c3b36c3 (patch)
treed4d7b987d9231ea06f997740158dfff644ca588c
parent571b09f999585c66e9781877c94807f663c2bd4c (diff)
more cleanup
-rw-r--r--openbox/client.c55
1 files changed, 24 insertions, 31 deletions
diff --git a/openbox/client.c b/openbox/client.c
index a17f091b..2f1c9c7b 100644
--- a/openbox/client.c
+++ b/openbox/client.c
@@ -1102,43 +1102,36 @@ static void client_get_desktop(ObClient *self)
self->desktop = d;
ob_debug("client requested desktop 0x%x\n", self->desktop);
} else {
- gboolean trdesk = FALSE;
-
- if (self->transient_for) {
- /* if they are all on one desktop, then open it on the
- same desktop */
- GSList *it;
- gboolean first = TRUE;
- guint all = screen_num_desktops; /* not a valid value */
+ GSList *it;
+ gboolean first = TRUE;
+ guint all = screen_num_desktops; /* not a valid value */
- for (it = self->parents; it; it = g_slist_next(it)) {
- ObClient *c = it->data;
+ /* if they are all on one desktop, then open it on the
+ same desktop */
+ for (it = self->parents; it; it = g_slist_next(it)) {
+ ObClient *c = it->data;
- if (c->desktop == DESKTOP_ALL) continue;
+ if (c->desktop == DESKTOP_ALL) continue;
- if (first) {
- all = c->desktop;
- first = FALSE;
- }
- else if (all != c->desktop)
- all = screen_num_desktops; /* make it invalid */
- }
- if (all != screen_num_desktops) {
- self->desktop = all;
- trdesk = TRUE;
+ if (first) {
+ all = c->desktop;
+ first = FALSE;
}
+ else if (all != c->desktop)
+ all = screen_num_desktops; /* make it invalid */
}
-
- if (!trdesk) {
- /* try get from the startup-notification protocol */
- if (sn_get_desktop(self->startup_id, &self->desktop)) {
- if (self->desktop >= screen_num_desktops &&
- self->desktop != DESKTOP_ALL)
- self->desktop = screen_num_desktops - 1;
- } else
- /* defaults to the current desktop */
- self->desktop = screen_desktop;
+ if (all != screen_num_desktops) {
+ self->desktop = all;
}
+ /* try get from the startup-notification protocol */
+ else if (sn_get_desktop(self->startup_id, &self->desktop)) {
+ if (self->desktop >= screen_num_desktops &&
+ self->desktop != DESKTOP_ALL)
+ self->desktop = screen_num_desktops - 1;
+ }
+ /* defaults to the current desktop */
+ else
+ self->desktop = screen_desktop;
}
}