summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMikael Magnusson <mikachu@comhem.se>2005-02-06 01:16:00 +0000
committerMikael Magnusson <mikachu@comhem.se>2005-02-06 01:16:00 +0000
commit60565bcba8bd5e42f82659b4aa641b05c5ec70a0 (patch)
treeb719424c9bce40d343d893acc4d0fa5b085ebd81
parentef042d220b1d5ff9752579bf6cfa41431d1a67ad (diff)
okay so that's why it didn't use move_onscreen
-rw-r--r--openbox/client.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/openbox/client.c b/openbox/client.c
index e37c1d24..2b30bddf 100644
--- a/openbox/client.c
+++ b/openbox/client.c
@@ -344,14 +344,18 @@ void client_manage(Window window)
place_client(self, &x, &y);
- /* make sure the window is visible.
- this is about the rude parameter:
- non-normal clients has less rules, and
- windows that are being restored from a session
- do also. we can assume you want it back where
- you saved it */
- client_move_onscreen(self, client_normal(self) && !self->session);
+ /* make sure the window is visible. */
+ client_find_onscreen(self, &x, &y,
+ self->frame->area.width,
+ self->frame->area.height,
+ /* non-normal clients has less rules, and
+ windows that are being restored from a session
+ do also. we can assume you want it back where
+ you saved it */
+ client_normal(self) && !self->session);
+ if (x != ox || y != oy)
+ client_move(self, x, y);
}
keyboard_grab_for_client(self, TRUE);