1
0
forked from aniani/vim

patch 8.1.2351: 'wincolor' not used for > for not fitting double width char

Problem:    'wincolor' not used for > for not fitting double width char.
            Also: popup drawn on right half of double width character looks
            wrong.
Solution:   Adjust color for > character.  Clear left half of double width
            character if right half is being overwritten.
This commit is contained in:
Bram Moolenaar
2019-11-26 22:39:10 +01:00
parent 0c0734d527
commit 92e25ab2df
4 changed files with 28 additions and 3 deletions

View File

@@ -1230,8 +1230,7 @@ win_line(
if (tocol == vcol)
tocol += n_extra;
// combine 'showbreak' with 'wincolor'
if (win_attr != 0)
char_attr = hl_combine_attr(win_attr, char_attr);
char_attr = hl_combine_attr(win_attr, char_attr);
# ifdef FEAT_SYN_HL
// combine 'showbreak' with 'cursorline'
if (cul_attr != 0)
@@ -1616,6 +1615,8 @@ win_line(
if (cul_attr)
multi_attr = hl_combine_attr(multi_attr, cul_attr);
#endif
multi_attr = hl_combine_attr(win_attr, multi_attr);
// put the pointer back to output the double-width
// character at the start of the next line.
++n_extra;
@@ -1790,7 +1791,7 @@ win_line(
mb_c = c;
mb_utf8 = FALSE;
mb_l = 1;
multi_attr = HL_ATTR(HLF_AT);
multi_attr = hl_combine_attr(win_attr, HL_ATTR(HLF_AT));
// Put pointer back so that the character will be
// displayed at the start of the next line.
--ptr;