made a new client position strategy similiar to that one proposed by Sander, but which takes top bar into account
8c1fffe1
1 file(s) · +7 −7
| 203 | 203 | c->border = 0; |
|
| 204 | 204 | setsize(c); |
|
| 205 | 205 | ||
| 206 | + | if(c->x + c->w > sw) |
|
| 207 | + | c->x = sw - c->w - 2; |
|
| 208 | + | if(c->x < 0) |
|
| 209 | + | c->x = 0; |
|
| 210 | + | if(c->y + c->h > sh) |
|
| 211 | + | c->y = sh - c->h - 2; |
|
| 206 | 212 | if(c->h != sh && c->y < bh) |
|
| 207 | - | c->y = c->ty = bh; |
|
| 213 | + | c->y = bh; |
|
| 208 | 214 | ||
| 209 | 215 | c->proto = getproto(c->win); |
|
| 210 | 216 | XSelectInput(dpy, c->win, |
|
| 257 | 263 | || (c->maxw && c->minw && |
|
| 258 | 264 | c->maxw == c->minw && c->maxh == c->minh); |
|
| 259 | 265 | settitle(c); |
|
| 260 | - | ||
| 261 | - | if(!trans) { |
|
| 262 | - | c->x = (sw / 2) - (c->w / 2); |
|
| 263 | - | c->y = ((sh - bh) / 2) - (c->h / 2) + bh; |
|
| 264 | - | } |
|
| 265 | - | ||
| 266 | 266 | if(isvisible(c)) |
|
| 267 | 267 | sel = c; |
|
| 268 | 268 | arrange(NULL); |
|