changeset 21929:771904112b47 v8.2.1514

patch 8.2.1514: multibyte vertical separator is cleared when dragging popup Commit: https://github.com/vim/vim/commit/dc0cf1db3e8e0de349e4cc5b0a7ab6c8b7dc2ebb Author: Bram Moolenaar <Bram@vim.org> Date: Sun Aug 23 15:09:36 2020 +0200 patch 8.2.1514: multibyte vertical separator is cleared when dragging popup Problem: Multibyte vertical separator is cleared when dragging a popup window using a multi-byte character for the border. Solution: Only clear the character before the window if it is double width. (closes #6766)
author Bram Moolenaar <Bram@vim.org>
date Sun, 23 Aug 2020 15:15:04 +0200
parents 1e038cdaaab6
children 2345b47682bd
files src/screen.c src/version.c
diffstat 2 files changed, 4 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/screen.c
+++ b/src/screen.c
@@ -465,7 +465,8 @@ screen_line(
     // double-wide character. Clear the left half to avoid it getting the popup
     // window background color.
     if (coloff > 0 && ScreenLines[off_to] == 0
-					     && ScreenLinesUC[off_to - 1] != 0)
+		   && ScreenLinesUC[off_to - 1] != 0
+		   && (*mb_char2cells)(ScreenLinesUC[off_to - 1]) > 1)
     {
 	ScreenLines[off_to - 1] = ' ';
 	ScreenLinesUC[off_to - 1] = 0;
--- a/src/version.c
+++ b/src/version.c
@@ -755,6 +755,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1514,
+/**/
     1513,
 /**/
     1512,