summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--openbox/client.c3
-rw-r--r--openbox/event.c6
2 files changed, 6 insertions, 3 deletions
diff --git a/openbox/client.c b/openbox/client.c
index 87865462..e0dc3f87 100644
--- a/openbox/client.c
+++ b/openbox/client.c
@@ -300,7 +300,8 @@ void client_manage(Window window)
dispatch_client(Event_Client_New, self, 0, 0);
/* make sure the window is visible */
- if (client_normal(self))
+ if (!(self->strut.left || self->strut.right ||
+ self->strut.top || self->strut.bottom))
client_move_onscreen(self, TRUE);
screen_update_areas();
diff --git a/openbox/event.c b/openbox/event.c
index 2a705e50..08240ff2 100644
--- a/openbox/event.c
+++ b/openbox/event.c
@@ -776,7 +776,8 @@ static void event_handle_client(ObClient *client, XEvent *e)
h = (e->xconfigurerequest.value_mask & CWHeight) ?
e->xconfigurerequest.height : client->area.height;
- if (client_normal(client)) {
+ if (!(client->strut.left || client->strut.right ||
+ client->strut.top || client->strut.bottom)) {
int newx = x;
int newy = y;
client_find_onscreen(client, &newx, &newy, w, h, TRUE);
@@ -974,7 +975,8 @@ static void event_handle_client(ObClient *client, XEvent *e)
h = client->area.y;
client->gravity = tmpg;
- if (client_normal(client)) {
+ if (!(client->strut.left || client->strut.right ||
+ client->strut.top || client->strut.bottom)) {
int newx = x;
int newy = y;
client_find_onscreen(client, &newx, &newy, w, h, TRUE);