diff options
Diffstat (limited to 'src/screen.c')
-rw-r--r-- | src/screen.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/screen.c b/src/screen.c index c0f7d494b..763d7a82f 100644 --- a/src/screen.c +++ b/src/screen.c @@ -460,6 +460,18 @@ screen_line( } #endif /* FEAT_RIGHTLEFT */ +#ifdef FEAT_TEXT_PROP + // First char of a popup window may go on top of the right half of a + // double-wide character. Clear the left half to avoid it getting the popup + // window background color. + if (coloff > 0 && ScreenLines[off_to] == 0) + { + ScreenLines[off_to - 1] = ' '; + ScreenLinesUC[off_to - 1] = 0; + screen_char(off_to - 1, row, col + coloff - 1); + } +#endif + redraw_next = char_needs_redraw(off_from, off_to, endcol - col); while (col < endcol) |