From e96e00c3faabac4c726efa972224d8d128610cb4 Mon Sep 17 00:00:00 2001 From: speediegq Date: Wed, 17 Aug 2022 18:37:35 +0200 Subject: [PATCH] Add anysize patch --- st | Bin 165352 -> 165352 bytes x.c | 58 +++++++++++++++++++++++++++++++--------------------------- 2 files changed, 31 insertions(+), 27 deletions(-) diff --git a/st b/st index d0068c9817ae2c221e33315f3eb7070d156e3203..df6e4ce992eeeaf6f37385f94a9a7da6afde2393 100755 GIT binary patch delta 17448 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 delta 17346 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 xxbutton.x - borderpx; + int x = e->xbutton.x - win.hborderpx; LIMIT(x, 0, win.tw - 1); return x / win.cw; } @@ -369,7 +370,7 @@ evcol(XEvent *e) int evrow(XEvent *e) { - int y = e->xbutton.y - borderpx; + int y = e->xbutton.y - win.vborderpx; LIMIT(y, 0, win.th - 1); return y / win.ch; } @@ -771,6 +772,9 @@ cresize(int width, int height) col = MAX(1, col); row = MAX(1, row); + win.hborderpx = (win.w - col * win.cw) / 2; + win.vborderpx = (win.h - row * win.ch) / 2; + tresize(col, row); xresize(col, row); ttyresize(win.tw, win.th); @@ -917,8 +921,8 @@ xhints(void) sizeh->flags = PSize | PResizeInc | PBaseSize | PMinSize; sizeh->height = win.h; sizeh->width = win.w; - sizeh->height_inc = win.ch; - sizeh->width_inc = win.cw; + sizeh->height_inc = 1; + sizeh->width_inc = 1; sizeh->base_height = 2 * borderpx; sizeh->base_width = 2 * borderpx; sizeh->min_height = win.ch + 2 * borderpx; @@ -1312,8 +1316,8 @@ xinit(int cols, int rows) xloadcols(); /* adjust fixed window geometry */ - win.w = 2 * borderpx + cols * win.cw; - win.h = 2 * borderpx + rows * win.ch; + win.w = 2 * win.hborderpx + 2 * borderpx + cols * win.cw; + win.h = 2 * win.vborderpx + 2 * borderpx + rows * win.ch; if (xw.gm & XNegative) xw.l += DisplayWidth(xw.dpy, xw.scr) - win.w - 2; if (xw.gm & YNegative) @@ -1435,7 +1439,7 @@ xinit(int cols, int rows) int xmakeglyphfontspecs(XftGlyphFontSpec *specs, const Glyph *glyphs, int len, int x, int y) { - float winx = borderpx + x * win.cw, winy = borderpx + y * win.ch, xp, yp; + float winx = win.hborderpx + x * win.cw, winy = win.vborderpx + y * win.ch, xp, yp; ushort mode, prevmode = USHRT_MAX; Font *font = &dc.font; int frcflags = FRC_NORMAL; @@ -1621,7 +1625,7 @@ void xdrawglyphfontspecs(const XftGlyphFontSpec *specs, Glyph base, int len, int x, int y) { int charlen = len * ((base.mode & ATTR_WIDE) ? 2 : 1); - int winx = borderpx + x * win.cw, winy = borderpx + y * win.ch, + int winx = win.hborderpx + x * win.cw, winy = win.vborderpx + y * win.ch, width = charlen * win.cw; Color *fg, *bg, *temp, revfg, revbg, truefg, truebg; XRenderColor colfg, colbg; @@ -1711,17 +1715,17 @@ xdrawglyphfontspecs(const XftGlyphFontSpec *specs, Glyph base, int len, int x, i /* Intelligent cleaning up of the borders. */ if (x == 0) { - xclear(0, (y == 0)? 0 : winy, borderpx, + xclear(0, (y == 0)? 0 : winy, win.hborderpx, winy + win.ch + - ((winy + win.ch >= borderpx + win.th)? win.h : 0)); + ((winy + win.ch >= win.vborderpx + win.th)? win.h : 0)); } - if (winx + width >= borderpx + win.tw) { + if (winx + width >= win.hborderpx + win.tw) { xclear(winx + width, (y == 0)? 0 : winy, win.w, - ((winy + win.ch >= borderpx + win.th)? win.h : (winy + win.ch))); + ((winy + win.ch >= win.vborderpx + win.th)? win.h : (winy + win.ch))); } if (y == 0) - xclear(winx, 0, winx + width, borderpx); - if (winy + win.ch >= borderpx + win.th) + xclear(winx, 0, winx + width, win.vborderpx); + if (winy + win.ch >= win.vborderpx + win.th) xclear(winx, winy + win.ch, winx + width, win.h); /* Clean up the region we want to draw to. */ @@ -2190,8 +2194,8 @@ xdrawcursor(int cx, int cy, Glyph g, int ox, int oy, Glyph og, Line line, int le /* FALLTHROUGH */ case 4: /* steady underline */ XftDrawRect(xw.draw, &drawcol, - borderpx + cx * win.cw, - borderpx + (cy + 1) * win.ch - \ + win.hborderpx + cx * win.cw, + win.vborderpx + (cy + 1) * win.ch - \ cursorthickness, win.cw, cursorthickness); break; @@ -2201,9 +2205,9 @@ xdrawcursor(int cx, int cy, Glyph g, int ox, int oy, Glyph og, Line line, int le /* FALLTHROUGH */ case 6: /* steady bar */ XftDrawRect(xw.draw, &drawcol, - borderpx + cx * win.cw, - borderpx + cy * win.ch, - cursorthickness, win.ch); + win.hborderpx + cx * win.cw, + win.vborderpx + cy * win.ch, + cursorthickness, win.ch); break; case 7: /* blinking st cursor */ if (IS_SET(MODE_BLINK)) @@ -2216,20 +2220,20 @@ xdrawcursor(int cx, int cy, Glyph g, int ox, int oy, Glyph og, Line line, int le } } else { XftDrawRect(xw.draw, &drawcol, - borderpx + cx * win.cw, - borderpx + cy * win.ch, + win.hborderpx + cx * win.cw, + win.vborderpx + cy * win.ch, win.cw - 1, 1); XftDrawRect(xw.draw, &drawcol, - borderpx + cx * win.cw, - borderpx + cy * win.ch, + win.hborderpx + cx * win.cw, + win.vborderpx + cy * win.ch, 1, win.ch - 1); XftDrawRect(xw.draw, &drawcol, - borderpx + (cx + 1) * win.cw - 1, - borderpx + cy * win.ch, + win.hborderpx + (cx + 1) * win.cw - 1, + win.vborderpx + cy * win.ch, 1, win.ch - 1); XftDrawRect(xw.draw, &drawcol, - borderpx + cx * win.cw, - borderpx + (cy + 1) * win.ch - 1, + win.hborderpx + cx * win.cw, + win.vborderpx + (cy + 1) * win.ch - 1, win.cw, 1); } }