patch 9.0.1800: Cursor position still wrong with 'showbreak' and virtual text
Problem: Cursor position still wrong with 'showbreak' and virtual text
after last character or 'listchars' "eol".
Solution: Remove unnecessary w_wcol adjustment in curs_columns(). Also
fix first char of virtual text not shown at the start of a screen
line.
closes: #12478
closes: #12532
closes: #12904
Signed-off-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
diff --git a/src/drawline.c b/src/drawline.c
index 12ac740..5b5fbf2 100644
--- a/src/drawline.c
+++ b/src/drawline.c
@@ -3733,7 +3733,11 @@
&& (*ptr != NUL
|| lcs_eol_one > 0
|| (wlv.n_extra > 0 && (wlv.c_extra != NUL
- || *wlv.p_extra != NUL))))
+ || *wlv.p_extra != NUL))
+#ifdef FEAT_PROP_POPUP
+ || text_prop_next < text_prop_count
+#endif
+ ))
{
c = wp->w_lcs_chars.ext;
wlv.char_attr = hl_combine_attr(wlv.win_attr, HL_ATTR(HLF_AT));
@@ -4014,6 +4018,7 @@
#endif
#ifdef FEAT_PROP_POPUP
|| text_prop_above || text_prop_follows
+ || text_prop_next < text_prop_count
#endif
|| (wp->w_p_list && wp->w_lcs_chars.eol != NUL
&& wlv.p_extra != at_end_str)