-- Leo's gemini proxy
-- Connecting to git.thebackupbox.net:1965...
-- Connected
-- Sending request
-- Meta line: 20 text/gemini
repo: rxvt-unicode-sixel action: commit revision: path_from: revision_from: d8e7ee7e9664db1a858770e9b12ad851d114d5ae: path_to: revision_to:
commit d8e7ee7e9664db1a858770e9b12ad851d114d5ae Author: Marc Lehmann <schmorp@schmorp.de> Date: Sat Jul 3 04:47:08 2021 +0000 *** empty log message *** diff --git a/Changes b/Changes
--- a/Changes +++ b/Changes @@ -77,6 +77,8 @@ TODO: clean up the resource vs. long option mess, especially in the manpage. combining characters. urxvt tries to compensate to some extent, but diacritics will be slightly off in many cases, and far off in some cases (e.g. input mono). + - when checking for overlap/careful handling, take non-basefont + character shifts into account. - allow perl-ext and perl-ext-common to override autoloaded extensions. this allows tabbed to disable itself in subtabs, avoiding recursive loading. diff --git a/src/rxvtfont.C b/src/rxvtfont.C
--- a/src/rxvtfont.C +++ b/src/rxvtfont.C @@ -1389,9 +1389,15 @@ rxvt_font_xft::has_char (unicode_t unicode, const rxvt_fontprop *prop, bool &car XGlyphInfo g; XftTextExtents32 (term->dpy, f, &chr, 1, &g); + int cwidth = prop->width * wcw; + + // use same adjustments as in ->draw, see there + g.x += g.xOff ? cwidth - g.xOff >> 1 : 0; + g.x += g.xOff ? 0 : cwidth; + int w = g.width - g.x; - careful = g.x > 0 || w > prop->width * wcw; + careful = g.x > 0 || w > cwidth; if (careful && !OVERLAP_OK (w, wcw, prop)) return false;
-----END OF PAGE-----
-- Response ended
-- Page fetched on Sun Jun 2 09:42:13 2024