diff src/drawline.c @ 30781:82fd47d71971 v9.0.0725

patch 9.0.0725: virtual text "after" wraps to next line when 'wrap' is off Commit: https://github.com/vim/vim/commit/7e017461e21ac534f8a0d59c1165d11358c69d87 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Oct 11 21:02:09 2022 +0100 patch 9.0.0725: virtual text "after" wraps to next line when 'wrap' is off Problem: Virtual text "after" wraps to next line even when 'wrap' is off and 'list' is set. Solution: Do not use the minimum width when 'wrap' is off. (issue #11336)
author Bram Moolenaar <Bram@vim.org>
date Tue, 11 Oct 2022 22:15:03 +0200
parents 8f25424b4bfd
children c7983f593fa7
line wrap: on
line diff
--- a/src/drawline.c
+++ b/src/drawline.c
@@ -583,8 +583,9 @@ textprop_size_after_trunc(
     int strsize = 0;
     int n_used;
 
-    // if the remaining size is to small wrap anyway and use the next line
-    if (space < PROP_TEXT_MIN_CELLS)
+    // if the remaining size is to small and 'wrap' is set we wrap anyway and
+    // use the next line
+    if (space < PROP_TEXT_MIN_CELLS && wp->w_p_wrap)
 	space += wp->w_width;
     if (flags & (TP_FLAG_ALIGN_BELOW | TP_FLAG_ALIGN_ABOVE))
 	space -= padding;
@@ -658,7 +659,8 @@ text_prop_position(
 			? (col_with_padding <= col_off || !wp->w_p_wrap)
 			: (n_used < *n_extra)))
 	    {
-		if (right && (wrap || room < PROP_TEXT_MIN_CELLS))
+		if (right && (wrap
+			      || (room < PROP_TEXT_MIN_CELLS && wp->w_p_wrap)))
 		{
 		    // right-align on next line instead of wrapping if possible
 		    before = wp->w_width - col_off - strsize + room;