diff options
| author | Dana Jansens <danakj@orodu.net> | 2008-03-27 09:44:48 -0400 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2008-03-27 09:45:28 -0400 |
| commit | 73adc6480d59fc5dccf9fe19ed5234c9582b328c (patch) | |
| tree | 169003b9322a09ea550b182fdcd684d2089217fc /openbox/client.c | |
| parent | fd2f617be7ff57fcb187daa737f66d243544c8cd (diff) | |
make windows stay on screen when they are resized due to their normal hints changing
Diffstat (limited to 'openbox/client.c')
| -rw-r--r-- | openbox/client.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/openbox/client.c b/openbox/client.c index 0ccb343b..b6ca93a3 100644 --- a/openbox/client.c +++ b/openbox/client.c @@ -933,6 +933,19 @@ static gboolean client_restore_session_stacking(ObClient *self) return FALSE; } +void client_reconfigure(ObClient *self, gboolean force) +{ + int x, y, w, h, lw, lh; + + x = self->area.x; + y = self->area.y; + w = self->area.width; + h = self->area.height; + client_try_configure(self, &x, &y, &w, &h, &lw, &lh, FALSE); + client_find_onscreen(self, &x, &y, w, h, FALSE); + client_configure(self, x, y, w, h, FALSE, TRUE, force); +} + void client_move_onscreen(ObClient *self, gboolean rude) { gint x = self->area.x; |
