diff options
author | zeertzjq <zeertzjq@outlook.com> | 2023-04-28 14:00:32 +0800 |
---|---|---|
committer | zeertzjq <zeertzjq@outlook.com> | 2023-04-28 16:42:26 +0800 |
commit | b26e242dd3d49fbc264a9616979acdacce10eac2 (patch) | |
tree | d5b94b8d9767c7b4a9dd9f1cc0e83f8be38f5ead | |
parent | 718a8862ab6a19dd1688116623b197a9ce431da8 (diff) | |
download | rneovim-b26e242dd3d49fbc264a9616979acdacce10eac2.tar.gz rneovim-b26e242dd3d49fbc264a9616979acdacce10eac2.tar.bz2 rneovim-b26e242dd3d49fbc264a9616979acdacce10eac2.zip |
vim-patch:8.1.1165: no test for mouse clicks in the terminal tabpage line
Problem: No test for mouse clicks in the terminal tabpage line.
Solution: Add a test. (Dominique Pelle, closes vim/vim#4247). Also init
TabPageIdxs[], in case it's used before a redraw.
https://github.com/vim/vim/commit/ca57ab54d759a3e265b19bbe31b57dfed00bbdd0
Co-authored-by: Bram Moolenaar <Bram@vim.org>
-rw-r--r-- | test/old/testdir/test_termcodes.vim | 53 |
1 files changed, 51 insertions, 2 deletions
diff --git a/test/old/testdir/test_termcodes.vim b/test/old/testdir/test_termcodes.vim index 546c5c821c..3ba97b270c 100644 --- a/test/old/testdir/test_termcodes.vim +++ b/test/old/testdir/test_termcodes.vim @@ -133,8 +133,9 @@ func Test_xterm_mouse_drag_statusline() let save_mouse = &mouse let save_term = &term " let save_ttymouse = &ttymouse - " set mouse=a term=xterm - set mouse=a + let save_laststatus = &laststatus + " set mouse=a term=xterm laststatus=2 + set mouse=a laststatus=2 for ttymouse_val in ['sgr'] " exe 'set ttymouse=' . ttymouse_val @@ -166,6 +167,54 @@ func Test_xterm_mouse_drag_statusline() let &mouse = save_mouse " let &term = save_term " let &ttymouse = save_ttymouse + let &laststatus = save_laststatus +endfunc + +func Test_xterm_mouse_click_tab() + let save_mouse = &mouse + let save_term = &term + " let save_ttymouse = &ttymouse + " set mouse=a term=xterm + set mouse=a + let row = 1 + + for ttymouse_val in ['sgr'] + " exe 'set ttymouse=' . ttymouse_val + e Xfoo + tabnew Xbar + + let a = split(execute(':tabs'), "\n") + call assert_equal(['Tab page 1', + \ '# Xfoo', + \ 'Tab page 2', + \ '> Xbar'], a) + + " Test clicking on tab names in the tabline at the top. + let col = 2 + redraw! + call MouseLeftClick(row, col) + call MouseLeftRelease(row, col) + let a = split(execute(':tabs'), "\n") + call assert_equal(['Tab page 1', + \ '> Xfoo', + \ 'Tab page 2', + \ '# Xbar'], a) + + let col = 9 + call MouseLeftClick(row, col) + call MouseLeftRelease(row, col) + let a = split(execute(':tabs'), "\n") + call assert_equal(['Tab page 1', + \ '# Xfoo', + \ 'Tab page 2', + \ '> Xbar'], a) + + %bwipe! + endfor + + let &mouse = save_mouse + " let &term = save_term + " let &ttymouse = save_ttymouse endfunc " Test for translation of special key codes (<xF1>, <xF2>, etc.) |