Introduction
Introduction Statistics Contact Development Disclaimer Help
st-vertcenter-20231003-eb3b894.diff - sites - public wiki contents of suckless.…
git clone git://git.suckless.org/sites
Log
Files
Refs
---
st-vertcenter-20231003-eb3b894.diff (2209B)
---
1 From c85891b21261b68b09ed9ae6a1ca18655ef19e69 Mon Sep 17 00:00:00 2001
2 From: roket1428 <[email protected]>
3 Date: Tue, 3 Oct 2023 11:10:39 +0300
4 Subject: [PATCH] vertcenter patch
5
6 ---
7 x.c | 10 ++++++----
8 1 file changed, 6 insertions(+), 4 deletions(-)
9
10 diff --git a/x.c b/x.c
11 index aa09997..9ecb46e 100644
12 --- a/x.c
13 +++ b/x.c
14 @@ -83,6 +83,7 @@ typedef struct {
15 int w, h; /* window width and height */
16 int ch; /* char height */
17 int cw; /* char width */
18 + int cyo; /* char y offset */
19 int mode; /* window state/mode flags */
20 int cursor; /* cursor style */
21 } TermWindow;
22 @@ -1031,6 +1032,7 @@ xloadfonts(const char *fontstr, double fontsize)
23 /* Setting character width and height. */
24 win.cw = ceilf(dc.font.width * cwscale);
25 win.ch = ceilf(dc.font.height * chscale);
26 + win.cyo = ceilf(dc.font.height * (chscale - 1) / 2);
27
28 FcPatternDel(pattern, FC_SLANT);
29 FcPatternAddInteger(pattern, FC_SLANT, FC_SLANT_ITALIC);
30 @@ -1255,7 +1257,7 @@ xmakeglyphfontspecs(XftGlyphFontSpec *specs, const…
31 FcCharSet *fccharset;
32 int i, f, numspecs = 0;
33
34 - for (i = 0, xp = winx, yp = winy + font->ascent; i < len; ++i) {
35 + for (i = 0, xp = winx, yp = winy + font->ascent + win.cyo; i < …
36 /* Fetch rune and mode for current glyph. */
37 rune = glyphs[i].u;
38 mode = glyphs[i].mode;
39 @@ -1280,7 +1282,7 @@ xmakeglyphfontspecs(XftGlyphFontSpec *specs, const…
40 font = &dc.bfont;
41 frcflags = FRC_BOLD;
42 }
43 - yp = winy + font->ascent;
44 + yp = winy + font->ascent + win.cyo;
45 }
46
47 /* Lookup character index with default font. */
48 @@ -1493,12 +1495,12 @@ xdrawglyphfontspecs(const XftGlyphFontSpec *spec…
49
50 /* Render underline and strikethrough. */
51 if (base.mode & ATTR_UNDERLINE) {
52 - XftDrawRect(xw.draw, fg, winx, winy + dc.font.ascent * …
53 + XftDrawRect(xw.draw, fg, winx, winy + win.cyo + dc.font…
54 width, 1);
55 }
56
57 if (base.mode & ATTR_STRUCK) {
58 - XftDrawRect(xw.draw, fg, winx, winy + 2 * dc.font.ascen…
59 + XftDrawRect(xw.draw, fg, winx, winy + win.cyo + 2 * dc.…
60 width, 1);
61 }
62
63 --
64 2.42.0
65
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.