# HG changeset patch # User Bram Moolenaar # Date 1601235007 -7200 # Node ID 909ce065e99a97249dfe275661ebd9aeb24d9858 # Parent a53dee41b3f0a8f03895142bcf1f68d6fe94adfa patch 8.2.1763: Vim9: cannot use "true" for popup window scrollbar option Commit: https://github.com/vim/vim/commit/6c542f77eba73a95447f285149b3fcb011aa9675 Author: Bram Moolenaar Date: Sun Sep 27 21:16:45 2020 +0200 patch 8.2.1763: Vim9: cannot use "true" for popup window scrollbar option Problem: Vim9: cannot use "true" for popup window scrollbar option. Solution: use dict_get_bool(). (closes https://github.com/vim/vim/issues/7029) diff --git a/src/popupwin.c b/src/popupwin.c --- a/src/popupwin.c +++ b/src/popupwin.c @@ -665,9 +665,9 @@ apply_general_options(win_T *wp, dict_T wp->w_firstline = -1; } - di = dict_find(dict, (char_u *)"scrollbar", -1); - if (di != NULL) - wp->w_want_scrollbar = dict_get_number(dict, (char_u *)"scrollbar"); + nr = dict_get_bool(dict, (char_u *)"scrollbar", -1); + if (nr != -1) + wp->w_want_scrollbar = nr; str = dict_get_string(dict, (char_u *)"title", FALSE); if (str != NULL) diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim --- a/src/testdir/test_popupwin.vim +++ b/src/testdir/test_popupwin.vim @@ -2168,6 +2168,21 @@ func Test_popup_scrollbar() endif endfunc + def CreatePopup(text: list) + popup_create(text, #{ + \ minwidth: 30, + \ maxwidth: 30, + \ minheight: 4, + \ maxheight: 4, + \ firstline: 1, + \ lastline: 4, + \ wrap: true, + \ scrollbar: true, + \ mapping: false, + \ filter: Popup_filter, + \ }) + enddef + func PopupScroll() call popup_clear() let text =<< trim END @@ -2179,18 +2194,7 @@ func Test_popup_scrollbar() long line long line long line long line long line long line long line long line long line long line long line long line END - call popup_create(text, #{ - \ minwidth: 30, - \ maxwidth: 30, - \ minheight: 4, - \ maxheight: 4, - \ firstline: 1, - \ lastline: 4, - \ wrap: v:true, - \ scrollbar: v:true, - \ mapping: v:false, - \ filter: funcref('Popup_filter') - \ }) + call CreatePopup(text) endfunc map :call test_setmouse(5, 36) map :call test_setmouse(4, 42) diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -751,6 +751,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1763, +/**/ 1762, /**/ 1761,