only use the initial_state shit when NOT starting and when managing the window
Dana Jansens danakj@orodu.net
1 files changed,
6 insertions(+),
3 deletions(-)
jump to
M
openbox/client.c
→
openbox/client.c
@@ -893,6 +893,7 @@ if (self->frame) client_shade(self, FALSE);
else self->shaded = FALSE; } if (!(self->functions & Func_Iconify) && self->iconic) { + g_message("UNSETTING ICONIC"); if (self->frame) client_iconify(self, FALSE, TRUE); else self->iconic = FALSE; }@@ -934,9 +935,11 @@ if ((hints = XGetWMHints(ob_display, self->window)) != NULL) {
if (hints->flags & InputHint) self->can_focus = hints->input; - /* only do this when starting! */ - if (ob_state == State_Starting && (hints->flags & StateHint)) - self->iconic = hints->initial_state == IconicState; + /* only do this when first managing the window *AND* when we aren't + starting up! */ + if (ob_state != State_Starting && self->frame == NULL) + if (hints->flags & StateHint) + self->iconic = hints->initial_state == IconicState; if (hints->flags & XUrgencyHint) ur = TRUE;