From 3fb01a53c685d8d7e7bd83c33500de80aed0d7c8 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 9 Apr 2019 21:52:02 +0200 Subject: [PATCH] patch 8.1.1142: no test for dragging the window separators with the mouse Problem: No test for dragging the window separators with the mouse. Solution: Add a test. (Dominique Pelle, closes #4226) --- src/testdir/test_termcodes.vim | 58 ++++++++++++++++++++++++++++++++++ src/version.c | 2 ++ 2 files changed, 60 insertions(+) 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("\[<%d;%d;%dM", button, col, row), 'Lx!') + + let drag = 32 + let row -= 1 + call feedkeys(printf("\[<%d;%d;%dM", drag, col, row), 'Lx!') + call assert_equal(rowseparator - 1, winheight(0) + 1) + let row += 1 + call feedkeys(printf("\[<%d;%d;%dM", drag, col, row), 'Lx!') + call assert_equal(rowseparator, winheight(0) + 1) + + let release = 3 + call feedkeys(printf("\[<%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("\[<%d;%d;%dM", button, col, row), 'Lx!') + + let drag = 32 + let col -= 1 + call feedkeys(printf("\[<%d;%d;%dM", drag, col, row), 'Lx!') + call assert_equal(colseparator - 1, winwidth(0) + 1) + let col += 1 + call feedkeys(printf("\[<%d;%d;%dM", drag, col, row), 'Lx!') + call assert_equal(colseparator, winwidth(0) + 1) + + let release = 3 + call feedkeys(printf("\[<%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 @@ -771,6 +771,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1142, /**/ 1141, /**/ -- 2.50.1