patch 8.1.1608: the evalfunc.c file is too big
Problem: The evalfunc.c file is too big.
Solution: Move sign functionality to sign.c.
diff --git a/src/testdir/dumps/Test_popupwin_scroll_8.dump b/src/testdir/dumps/Test_popupwin_scroll_8.dump
new file mode 100644
index 0000000..34b1638
--- /dev/null
+++ b/src/testdir/dumps/Test_popupwin_scroll_8.dump
@@ -0,0 +1,10 @@
+>1+0&#ffffff0| @73
+|2| @73
+|3| @73
+|4| @31|f+0#0000001#ffd7ff255|o|u|r| @3| +0#0000000#ff404010| +0&#ffffff0@32
+|5| @31|f+0#0000001#ffd7ff255|i|v|e| @3| +0#0000000#4040ff13| +0&#ffffff0@32
+|6| @31|s+0#0000001#ffd7ff255|i|x| @4| +0#0000000#4040ff13| +0&#ffffff0@32
+|7| @31|s+0#0000001#ffd7ff255|e|v|e|n| @2| +0#0000000#ff404010| +0&#ffffff0@32
+|8| @73
+|9| @73
+|:|c|a|l@1| |C|l|i|c|k|T|o|p|(|)| @40|1|,|1| @10|T|o|p|
diff --git a/src/testdir/dumps/Test_popupwin_scroll_9.dump b/src/testdir/dumps/Test_popupwin_scroll_9.dump
new file mode 100644
index 0000000..d2b7134
--- /dev/null
+++ b/src/testdir/dumps/Test_popupwin_scroll_9.dump
@@ -0,0 +1,10 @@
+>1+0&#ffffff0| @73
+|2| @73
+|3| @73
+|4| @31|f+0#0000001#ffd7ff255|i|v|e| @3| +0#0000000#ff404010| +0&#ffffff0@32
+|5| @31|s+0#0000001#ffd7ff255|i|x| @4| +0#0000000#ff404010| +0&#ffffff0@32
+|6| @31|s+0#0000001#ffd7ff255|e|v|e|n| @2| +0#0000000#4040ff13| +0&#ffffff0@32
+|7| @31|e+0#0000001#ffd7ff255|i|g|h|t| @2| +0#0000000#4040ff13| +0&#ffffff0@32
+|8| @73
+|9| @73
+|:|c|a|l@1| |C|l|i|c|k|B|o|t|(|)| @40|1|,|1| @10|T|o|p|
diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim
index 1cb0734..f4bc33c 100644
--- a/src/testdir/test_popupwin.vim
+++ b/src/testdir/test_popupwin.vim
@@ -1436,7 +1436,15 @@
func ScrollDown()
call feedkeys("\<F3>\<ScrollWheelDown>", "xt")
endfunc
+ func ClickTop()
+ call feedkeys("\<F4>\<LeftMouse>", "xt")
+ endfunc
+ func ClickBot()
+ call feedkeys("\<F5>\<LeftMouse>", "xt")
+ endfunc
map <silent> <F3> :call test_setmouse(5, 36)<CR>
+ map <silent> <F4> :call test_setmouse(4, 42)<CR>
+ map <silent> <F5> :call test_setmouse(7, 42)<CR>
END
call writefile(lines, 'XtestPopupScroll')
let buf = RunVimInTerminal('-S XtestPopupScroll', {'rows': 10})
@@ -1464,6 +1472,14 @@
call term_sendkeys(buf, ":call ScrollDown()\<CR>")
call VerifyScreenDump(buf, 'Test_popupwin_scroll_7', {})
+ call term_sendkeys(buf, ":call ClickTop()\<CR>")
+ sleep 100m
+ call term_sendkeys(buf, ":call ClickTop()\<CR>")
+ call VerifyScreenDump(buf, 'Test_popupwin_scroll_8', {})
+
+ call term_sendkeys(buf, ":call ClickBot()\<CR>")
+ call VerifyScreenDump(buf, 'Test_popupwin_scroll_9', {})
+
" clean up
call StopVimInTerminal(buf)
call delete('XtestPopupScroll')