]> granicus.if.org Git - vim/commitdiff
patch 8.2.1514: multibyte vertical separator is cleared when dragging popup v8.2.1514
authorBram Moolenaar <Bram@vim.org>
Sun, 23 Aug 2020 13:09:36 +0000 (15:09 +0200)
committerBram Moolenaar <Bram@vim.org>
Sun, 23 Aug 2020 13:09:36 +0000 (15:09 +0200)
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)

src/screen.c
src/version.c

index 86ebd400b00c595d00dd05b8a2d4ab2be20297ed..233d6a58529248fc5f215c574a01b6e915b09a8c 100644 (file)
@@ -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;
index b52d4a8c62a72851fa50c7f031bae1d713a7326d..02457eb5e9ef12c1bb3ded547b69e5723f833f66 100644 (file)
@@ -754,6 +754,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1514,
 /**/
     1513,
 /**/