summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2019-04-09 21:52:02 +0200
committerBram Moolenaar <Bram@vim.org>2019-04-09 21:52:02 +0200
commit3fb01a53c685d8d7e7bd83c33500de80aed0d7c8 (patch)
tree6d5b4b7b593bf6f71f11bc2d2eb85c57882183c5
parent1b55797e90c5fe41691afe43aed8afffbbcebeb9 (diff)
downloadvim-git-3fb01a53c685d8d7e7bd83c33500de80aed0d7c8.tar.gz
patch 8.1.1142: no test for dragging the window separators with the mousev8.1.1142
Problem: No test for dragging the window separators with the mouse. Solution: Add a test. (Dominique Pelle, closes #4226)
-rw-r--r--src/testdir/test_termcodes.vim58
-rw-r--r--src/version.c2
2 files changed, 60 insertions, 0 deletions
diff --git a/src/testdir/test_termcodes.vim b/src/testdir/test_termcodes.vim
index 0bee55abe..ac846a4ad 100644
--- a/src/testdir/test_termcodes.vim
+++ b/src/testdir/test_termcodes.vim
@@ -111,3 +111,61 @@ func Test_xterm_mouse_wheel()
let &ttymouse = save_ttymouse
bwipe!
endfunc
+
+func Test_xterm_mouse_drag_window_separator()
+ let save_mouse = &mouse
+ let save_term = &term
+ let save_ttymouse = &ttymouse
+ set mouse=a
+ set term=xterm
+ set ttymouse=sgr
+
+ " Split horizontally and test dragging the horizontal window separator.
+ split
+ let rowseparator = winheight(0) + 1
+
+ let button = 0 " left down.
+ let row = rowseparator
+ let col = 1
+ call feedkeys(printf("\<Esc>[<%d;%d;%dM", button, col, row), 'Lx!')
+
+ let drag = 32
+ let row -= 1
+ call feedkeys(printf("\<Esc>[<%d;%d;%dM", drag, col, row), 'Lx!')
+ call assert_equal(rowseparator - 1, winheight(0) + 1)
+ let row += 1
+ call feedkeys(printf("\<Esc>[<%d;%d;%dM", drag, col, row), 'Lx!')
+ call assert_equal(rowseparator, winheight(0) + 1)
+
+ let release = 3
+ call feedkeys(printf("\<Esc>[<%d;%d;%dm", release, col, row), 'Lx!')
+ call assert_equal(rowseparator, winheight(0) + 1)
+
+ bwipe!
+
+ " Split vertically and test dragging the vertical window separator.
+ vsplit
+ let colseparator = winwidth(0) + 1
+
+ let button = 0
+ let row = 1
+ let col = colseparator
+ call feedkeys(printf("\<Esc>[<%d;%d;%dM", button, col, row), 'Lx!')
+
+ let drag = 32
+ let col -= 1
+ call feedkeys(printf("\<Esc>[<%d;%d;%dM", drag, col, row), 'Lx!')
+ call assert_equal(colseparator - 1, winwidth(0) + 1)
+ let col += 1
+ call feedkeys(printf("\<Esc>[<%d;%d;%dM", drag, col, row), 'Lx!')
+ call assert_equal(colseparator, winwidth(0) + 1)
+
+ let release = 3
+ call feedkeys(printf("\<Esc>[<%d;%d;%dm", release, col, row), 'Lx!')
+ call assert_equal(colseparator, winwidth(0) + 1)
+
+ bwipe!
+ let &mouse = save_mouse
+ let &term = save_term
+ let &ttymouse = save_ttymouse
+endfunc
diff --git a/src/version.c b/src/version.c
index 4dc55f4f8..a9e4ccf74 100644
--- a/src/version.c
+++ b/src/version.c
@@ -772,6 +772,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1142,
+/**/
1141,
/**/
1140,