diff options
author | Bram Moolenaar <Bram@vim.org> | 2020-07-26 22:20:54 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2020-07-26 22:20:54 +0200 |
commit | 6d585f4c5c8d120f768dd61bfd32f6e57ad562a7 (patch) | |
tree | 47e0cb1bbc2f7aa9b223584994afd45a5b68869d /src | |
parent | 01865ade85d2508639e24aaca5948b09fb284a82 (diff) |
patch 8.2.1303: calling popup_setoptions() resets 'signcolumn'v8.2.1303
Problem: Calling popup_setoptions() resets 'signcolumn'.
Solution: Only set 'signcolumn' when creating the popup. (closes #6542)
Diffstat (limited to 'src')
-rw-r--r-- | src/popupwin.c | 6 | ||||
-rw-r--r-- | src/testdir/test_popupwin.vim | 10 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 16 insertions, 2 deletions
diff --git a/src/popupwin.c b/src/popupwin.c index fc69c90d9d..d2b7f22f0b 100644 --- a/src/popupwin.c +++ b/src/popupwin.c @@ -740,8 +740,6 @@ apply_general_options(win_T *wp, dict_T *dict) set_string_option_direct_in_win(wp, (char_u *)"wincolor", -1, str, OPT_FREE|OPT_LOCAL, 0); - set_string_option_direct_in_win(wp, (char_u *)"signcolumn", -1, - (char_u *)"no", OPT_FREE|OPT_LOCAL, 0); set_padding_border(dict, wp->w_popup_padding, "padding", 999); set_padding_border(dict, wp->w_popup_border, "border", 1); @@ -946,6 +944,10 @@ apply_options(win_T *wp, dict_T *dict) int nr; apply_move_options(wp, dict); + + set_string_option_direct_in_win(wp, (char_u *)"signcolumn", -1, + (char_u *)"no", OPT_FREE|OPT_LOCAL, 0); + apply_general_options(wp, dict); nr = dict_get_number(dict, (char_u *)"hidden"); diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim index 054d479efd..beb6870b6d 100644 --- a/src/testdir/test_popupwin.vim +++ b/src/testdir/test_popupwin.vim @@ -3115,6 +3115,11 @@ func Test_popupmenu_info_border() call term_sendkeys(buf, "a\<C-X>\<C-U>") call VerifyScreenDump(buf, 'Test_popupwin_infopopup_8', {}) + call term_sendkeys(buf, " \<Esc>") + call term_sendkeys(buf, ":set completepopup+=width:10\<CR>") + call term_sendkeys(buf, "a\<C-X>\<C-U>") + call VerifyScreenDump(buf, 'Test_popupwin_infopopup_9', {}) + call term_sendkeys(buf, "\<Esc>") call StopVimInTerminal(buf) call delete('XtestInfoPopup') @@ -3436,6 +3441,11 @@ func Test_popupwin_atcursor_far_right() normal! ggg$ let winid = popup_atcursor(repeat('x', 500), #{moved: 'any', border: []}) + " 'signcolumn' was getting reset + call setwinvar(winid, '&signcolumn', 'yes') + call popup_setoptions(winid, {'zindex': 1000}) + call assert_equal('yes', getwinvar(winid, '&signcolumn')) + call popup_close(winid) bwipe! set signcolumn& diff --git a/src/version.c b/src/version.c index e969ab0f35..73ab8c3998 100644 --- a/src/version.c +++ b/src/version.c @@ -755,6 +755,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1303, +/**/ 1302, /**/ 1301, |