diff options
author | Shiva <shiv@shiv.me> | 2017-01-29 21:59:15 -0800 |
---|---|---|
committer | Shiva <shiv@shiv.me> | 2017-01-29 21:59:15 -0800 |
commit | 97e27bc64d415a561cd78babb2cc9e383b42ffcb (patch) | |
tree | b944e475f287e31d2df2f73227c13b4f93cb3e9d /patches/st-vertcenter-20160819-023225e.diff | |
parent | efde1e896e2682e8afb6bd278a3035f43bbf14df (diff) |
Update readme with details about patches
Diffstat (limited to 'patches/st-vertcenter-20160819-023225e.diff')
-rw-r--r-- | patches/st-vertcenter-20160819-023225e.diff | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/patches/st-vertcenter-20160819-023225e.diff b/patches/st-vertcenter-20160819-023225e.diff new file mode 100644 index 0000000..e3fca96 --- /dev/null +++ b/patches/st-vertcenter-20160819-023225e.diff @@ -0,0 +1,44 @@ +diff --git a/st.c b/st.c +index 2594c65..7285237 100644 +--- a/st.c ++++ b/st.c +@@ -268,6 +268,7 @@ typedef struct { + int w, h; /* window width and height */ + int ch; /* char height */ + int cw; /* char width */ ++ int cyo; /* char y offset */ + char state; /* focus, redraw, visible */ + int cursor; /* cursor style */ + } XWindow; +@@ -3359,6 +3360,7 @@ xloadfonts(char *fontstr, double fontsize) + /* Setting character width and height. */ + xw.cw = ceilf(dc.font.width * cwscale); + xw.ch = ceilf(dc.font.height * chscale); ++ xw.cyo = ceilf(dc.font.height * (chscale - 1) / 2); + + FcPatternDel(pattern, FC_SLANT); + FcPatternAddInteger(pattern, FC_SLANT, FC_SLANT_ITALIC); +@@ -3584,7 +3586,7 @@ xmakeglyphfontspecs(XftGlyphFontSpec *specs, const Glyph *glyphs, int len, int x + font = &dc.bfont; + frcflags = FRC_BOLD; + } +- yp = winy + font->ascent; ++ yp = winy + font->ascent + xw.cyo; + } + + /* Lookup character index with default font. */ +@@ -3796,12 +3798,12 @@ xdrawglyphfontspecs(const XftGlyphFontSpec *specs, Glyph base, int len, int x, i + + /* Render underline and strikethrough. */ + if (base.mode & ATTR_UNDERLINE) { +- XftDrawRect(xw.draw, fg, winx, winy + dc.font.ascent + 1, ++ XftDrawRect(xw.draw, fg, winx, winy + xw.cyo + dc.font.ascent + 1, + width, 1); + } + + if (base.mode & ATTR_STRUCK) { +- XftDrawRect(xw.draw, fg, winx, winy + 2 * dc.font.ascent / 3, ++ XftDrawRect(xw.draw, fg, winx, winy + xw.cyo + 2 * dc.font.ascent / 3, + width, 1); + } + |