summaryrefslogtreecommitdiff
path: root/openbox/client.c
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2010-04-20 15:20:46 -0400
committerDana Jansens <danakj@orodu.net>2010-04-20 15:20:46 -0400
commita16449adb643d6416cc71af1bb6b5fde93b95cb0 (patch)
tree4f57c25cc640c0dadcdff7d67dd945cdaa2d32cc /openbox/client.c
parent197ee0ad4732c8668fe38a6b49e0a747866ef3ea (diff)
don't change stacking stuff on windows when moving them during the unmanage phase.
Diffstat (limited to 'openbox/client.c')
-rw-r--r--openbox/client.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/openbox/client.c b/openbox/client.c
index 605a191f..cc691718 100644
--- a/openbox/client.c
+++ b/openbox/client.c
@@ -3128,11 +3128,16 @@ void client_configure(ObClient *self, gint x, gint y, gint w, gint h,
/* if it moved between monitors, then this can affect the stacking
layer of this window or others - for fullscreen windows.
also if it changed to/from oldschool fullscreen then its layer may
- change */
- if (screen_find_monitor(&self->frame->area) !=
- screen_find_monitor(&oldframe) ||
- (final && (client_is_oldfullscreen(self, &oldclient) !=
- client_is_oldfullscreen(self, &self->area))))
+ change
+
+ watch out tho, don't try change stacking stuff if the window is no
+ longer being managed !
+ */
+ if (self->managed &&
+ (screen_find_monitor(&self->frame->area) !=
+ screen_find_monitor(&oldframe) ||
+ (final && (client_is_oldfullscreen(self, &oldclient) !=
+ client_is_oldfullscreen(self, &self->area)))))
{
client_calc_layer(self);
}