From: Bram Moolenaar Date: Sun, 15 Sep 2019 16:11:16 +0000 (+0200) Subject: patch 8.1.2039: character from 'showbreak' does not use 'wincolor' X-Git-Tag: v8.1.2039 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8ae54375cad51c3c05b7bb5600305062a1ebad1c;p=vim patch 8.1.2039: character from 'showbreak' does not use 'wincolor' Problem: Character from 'showbreak' does not use 'wincolor'. (Nick Jensen) Solution: Mix with 'wincolor'. (closes #4938) --- diff --git a/src/screen.c b/src/screen.c index 14b946538..22b26b472 100644 --- a/src/screen.c +++ b/src/screen.c @@ -4153,6 +4153,9 @@ win_line( * required when 'linebreak' is also set. */ if (tocol == vcol) tocol += n_extra; + // combine 'showbreak' with 'wincolor' + if (win_attr != 0) + char_attr = hl_combine_attr(win_attr, char_attr); # ifdef FEAT_SYN_HL // combine 'showbreak' with 'cursorline' if (cul_attr != 0) diff --git a/src/testdir/dumps/Test_popupwin_showbreak.dump b/src/testdir/dumps/Test_popupwin_showbreak.dump index e7d03d05c..8ce0a7501 100644 --- a/src/testdir/dumps/Test_popupwin_showbreak.dump +++ b/src/testdir/dumps/Test_popupwin_showbreak.dump @@ -1,10 +1,10 @@ >1+0&#ffffff0| @73 |2| @73 -|3| @73 -|4| @25|╔+0#0000001#ffd7ff255|═@17|╗| +0#0000000#ffffff0@27 -|5| @25|║+0#0000001#ffd7ff255| |a| |l|o|n|g| |l|i|n|e| |h|e|r|e| |║| +0#0000000#ffffff0@27 -|6| @25|╚+0#0000001#ffd7ff255|═@17|╝| +0#0000000#ffffff0@27 -|7| @73 +|3| @27|╔+0#0000001#ffd7ff255|═@13|╗| +0#0000000#ffffff0@29 +|4| @27|║+0#0000001#ffd7ff255| |a| |l|o|n|g| |l|i|n|e| @1|║| +0#0000000#ffffff0@29 +|5| @27|║+0#0000001#ffd7ff255| |>+0#4040ff13&@1| |h+0#0000001&|e|r|e| |t|h|a|t| |║| +0#0000000#ffffff0@29 +|6| @27|║+0#0000001#ffd7ff255| |>+0#4040ff13&@1| | +0#0000001&|w|r|a|p|s| @3|║| +0#0000000#ffffff0@29 +|7| @27|╚+0#0000001#ffd7ff255|═@13|╝| +0#0000000#ffffff0@29 |8| @73 |9| @73 @57|1|,|1| @10|T|o|p| diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim index feb8ce37b..de8a23f76 100644 --- a/src/testdir/test_popupwin.vim +++ b/src/testdir/test_popupwin.vim @@ -797,8 +797,9 @@ func Test_popup_with_showbreak() set showbreak=>>\ call setline(1, range(1, 20)) let winid = popup_dialog( - \ 'a long line here', - \ #{filter: 'popup_filter_yesno'}) + \ 'a long line here that wraps', + \ #{filter: 'popup_filter_yesno', + \ maxwidth: 12}) END call writefile(lines, 'XtestPopupShowbreak') let buf = RunVimInTerminal('-S XtestPopupShowbreak', #{rows: 10}) diff --git a/src/version.c b/src/version.c index 98e69d446..a2f64177a 100644 --- a/src/version.c +++ b/src/version.c @@ -757,6 +757,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 2039, /**/ 2038, /**/