diff --git a/openbox/place.c b/openbox/place.c index bfe27e28..ea131bea 100644 --- a/openbox/place.c +++ b/openbox/place.c @@ -270,7 +270,8 @@ typedef enum #define SMART_IGNORE(placer, c) \ (placer == c || c->shaded || !c->frame->visible || \ c->type == OB_CLIENT_TYPE_SPLASH || c->type == OB_CLIENT_TYPE_DESKTOP || \ - c->type == OB_CLIENT_TYPE_MENU || c->type == OB_CLIENT_TYPE_TOOLBAR || \ + ((c->type == OB_CLIENT_TYPE_MENU || c->type == OB_CLIENT_TYPE_TOOLBAR) &&\ + client_has_parent(c)) || \ (c->desktop != DESKTOP_ALL && \ c->desktop != (placer->desktop == DESKTOP_ALL ? \ screen_desktop : placer->desktop)))