changed border handling
464fc2cd
3 file(s) · +11 −18
| 185 | 185 | c->y = wa->y; |
|
| 186 | 186 | c->w = wa->width; |
|
| 187 | 187 | c->h = wa->height; |
|
| 188 | + | c->border = wa->border_width; |
|
| 188 | 189 | if(c->w == sw && c->h == sh) { |
|
| 189 | - | c->border = 0; |
|
| 190 | 190 | c->x = sx; |
|
| 191 | 191 | c->y = sy; |
|
| 192 | 192 | } |
|
| 193 | 193 | else { |
|
| 194 | - | c->border = BORDERPX; |
|
| 195 | 194 | if(c->x + c->w + 2 * c->border > wax + waw) |
|
| 196 | 195 | c->x = wax + waw - c->w - 2 * c->border; |
|
| 197 | 196 | if(c->y + c->h + 2 * c->border > way + wah) |
|
| 205 | 204 | XSelectInput(dpy, w, |
|
| 206 | 205 | StructureNotifyMask | PropertyChangeMask | EnterWindowMask); |
|
| 207 | 206 | grabbuttons(c, False); |
|
| 208 | - | wc.border_width = c->border; |
|
| 207 | + | wc.border_width = BORDERPX; |
|
| 209 | 208 | XConfigureWindow(dpy, w, CWBorderWidth, &wc); |
|
| 210 | 209 | XSetWindowBorder(dpy, w, dc.norm[ColBorder]); |
|
| 211 | 210 | configure(c); /* propagates border_width, if size doesn't change */ |
|
| 270 | 269 | } |
|
| 271 | 270 | if(w <= 0 || h <= 0) |
|
| 272 | 271 | return; |
|
| 273 | - | if(w == sw && h == sh) |
|
| 274 | - | c->border = 0; |
|
| 275 | - | else |
|
| 276 | - | c->border = BORDERPX; |
|
| 277 | 272 | /* offscreen appearance fixes */ |
|
| 278 | 273 | if(x > sw) |
|
| 279 | 274 | x = sw - w - 2 * c->border; |
|
| 191 | 191 | if(isvisible(c)) |
|
| 192 | 192 | XMoveResizeWindow(dpy, c->win, c->x, c->y, c->w, c->h); |
|
| 193 | 193 | } |
|
| 194 | - | else { |
|
| 194 | + | else |
|
| 195 | 195 | configure(c); |
|
| 196 | - | } |
|
| 197 | - | c->border = BORDERPX; |
|
| 198 | 196 | } |
|
| 199 | 197 | else { |
|
| 200 | 198 | wc.x = ev->x; |
| 38 | 38 | ny = way; |
|
| 39 | 39 | if(i < nmaster) { |
|
| 40 | 40 | ny += i * mh; |
|
| 41 | - | nw = mw - 2 * BORDERPX; |
|
| 42 | - | nh = mh - 2 * BORDERPX; |
|
| 41 | + | nw = mw - 2 * c->border; |
|
| 42 | + | nh = mh - 2 * c->border; |
|
| 43 | 43 | } |
|
| 44 | 44 | else { /* tile window */ |
|
| 45 | 45 | nx += mw; |
|
| 46 | - | nw = tw - 2 * BORDERPX; |
|
| 47 | - | if(th > 2 * BORDERPX) { |
|
| 46 | + | nw = tw - 2 * c->border; |
|
| 47 | + | if(th > 2 * c->border) { |
|
| 48 | 48 | ny += (i - nmaster) * th; |
|
| 49 | - | nh = th - 2 * BORDERPX; |
|
| 49 | + | nh = th - 2 * c->border; |
|
| 50 | 50 | } |
|
| 51 | - | else /* fallback if th <= 2 * BORDERPX */ |
|
| 52 | - | nh = wah - 2 * BORDERPX; |
|
| 51 | + | else /* fallback if th <= 2 * c->border */ |
|
| 52 | + | nh = wah - 2 * c->border; |
|
| 53 | 53 | } |
|
| 54 | 54 | resize(c, nx, ny, nw, nh, False); |
|
| 55 | 55 | i++; |
|
| 125 | 125 | masterw = MASTERWIDTH; |
|
| 126 | 126 | else { |
|
| 127 | 127 | i = atoi(arg); |
|
| 128 | - | if(waw * (masterw + i) / 1000 >= waw - 2 * BORDERPX |
|
| 128 | + | if(waw * (masterw + i) / 1000 >= waw - 2 * BORDERPX |
|
| 129 | 129 | || waw * (masterw + i) / 1000 <= 2 * BORDERPX) |
|
| 130 | 130 | return; |
|
| 131 | 131 | masterw += i; |
|