changeset 35010:664bc783e05d v9.1.0358

patch 9.1.0358: wrong drawing in GUI with setcellwidth() Commit: https://github.com/vim/vim/commit/8927c9b720135610a1193999d29be76927b05ab3 Author: h-east <h.east.727@gmail.com> Date: Sat Apr 20 17:57:19 2024 +0200 patch 9.1.0358: wrong drawing in GUI with setcellwidth() Problem: wrong drawing in GUI with setcellwidth() (after v9.1.0344) Solution: move gui.in_use condition (h-east) closes: #14600 Signed-off-by: h-east <h.east.727@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Sat, 20 Apr 2024 18:15:02 +0200
parents db548356f001
children 197422a8aa9a
files src/screen.c src/version.c
diffstat 2 files changed, 13 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/src/screen.c
+++ b/src/screen.c
@@ -1981,22 +1981,19 @@ screen_char(unsigned off, int row, int c
     {
 	char_u	    buf[MB_MAXBYTES + 1];
 
-	if (get_cellwidth(ScreenLinesUC[off]) > 1)
-	{
-	    // If the width is set to 2 with `setcellwidths`
-
+	if (
 #ifdef FEAT_GUI
-	    if (!gui.in_use)
-	    {
+	    !gui.in_use &&
 #endif
-		// Clear the two screen cells. If the character is actually
-		// single width it won't change the second cell.
-		out_str((char_u *)"  ");
-		term_windgoto(row, col);
-		screen_cur_col = 9999;
-#ifdef FEAT_GUI
-	    }
-#endif
+	    get_cellwidth(ScreenLinesUC[off]) > 1
+	    )
+	{
+	    // If the width is set to 2 with setcellwidths()
+	    // clear the two screen cells. If the character is actually
+	    // single width it won't change the second cell.
+	    out_str((char_u *)"  ");
+	    term_windgoto(row, col);
+	    screen_cur_col = 9999;
 	}
 	else if (utf_ambiguous_width(ScreenLinesUC[off]))
 	{
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    358,
+/**/
     357,
 /**/
     356,