Mercurial > vim
annotate src/testdir/test_termcodes.vim @ 16275:ed5172ae1c32 v8.1.1142
patch 8.1.1142: no test for dragging the window separators with the mouse
commit https://github.com/vim/vim/commit/3fb01a53c685d8d7e7bd83c33500de80aed0d7c8
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Apr 9 21:52:02 2019 +0200
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 https://github.com/vim/vim/issues/4226)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 09 Apr 2019 22:00:05 +0200 |
parents | 7feb5b90be5f |
children | f3d579f009d1 |
rev | line source |
---|---|
16263
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1 " Tests for decoding escape sequences sent by the terminal. |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3 " This only works for Unix in a terminal |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4 if has('gui_running') || !has('unix') |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
5 finish |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
6 endif |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
7 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
8 func Test_xterm_mouse_click() |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
9 new |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
10 let save_mouse = &mouse |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
11 let save_term = &term |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
12 let save_ttymouse = &ttymouse |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
13 set mouse=a |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
14 set term=xterm |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
15 call setline(1, ['line 1', 'line 2', 'line 3 is a bit longer']) |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
16 redraw |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
17 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
18 " Xterm mouse click |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
19 set ttymouse=xterm |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
20 let button = 0x20 " left down |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
21 let row = 2 + 32 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
22 let col = 6 + 32 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
23 call feedkeys("\<Esc>[M" .. list2str([button, col, row]), 'Lx!') |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
24 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
25 let button = 0x23 " release |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
26 call feedkeys("\<Esc>[M" .. list2str([button, col, row]), 'Lx!') |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
27 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
28 call assert_equal([0, 2, 6, 0], getpos('.')) |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
29 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
30 " SGR mouse click |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
31 set ttymouse=sgr |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
32 let button = 0 " left down |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
33 let row = 3 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
34 let col = 9 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
35 call feedkeys(printf("\<Esc>[<%d;%d;%dM", button, col, row), 'Lx!') |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
36 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
37 let button = 3 " release |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
38 call feedkeys(printf("\<Esc>[<%d;%d;%dm", button, col, row), 'Lx!') |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
39 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
40 call assert_equal([0, 3, 9, 0], getpos('.')) |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
41 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
42 let &mouse = save_mouse |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
43 let &term = save_term |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
44 let &ttymouse = save_ttymouse |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
45 bwipe! |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
46 endfunc |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
47 |
16265
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
48 func Test_xterm_mouse_wheel() |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
49 new |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
50 let save_mouse = &mouse |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
51 let save_term = &term |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
52 let save_ttymouse = &ttymouse |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
53 set mouse=a |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
54 set term=xterm |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
55 call setline(1, range(1, 100)) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
56 |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
57 " Test Xterm mouse wheel. |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
58 set ttymouse=xterm |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
59 let button = 0x41 " wheel down. |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
60 let row = 1 + 32 " cursor position for mouse wheel is not relevant. |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
61 let col = 1 + 32 |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
62 |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
63 call assert_equal(1, line('w0')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
64 call assert_equal([0, 1, 1, 0], getpos('.')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
65 call feedkeys("\<Esc>[M" .. list2str([button, col, row]), 'Lx!') |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
66 call assert_equal(4, line('w0')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
67 call assert_equal([0, 4, 1, 0], getpos('.')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
68 call feedkeys("\<Esc>[M" .. list2str([button, col, row]), 'Lx!') |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
69 call assert_equal(7, line('w0')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
70 call assert_equal([0, 7, 1, 0], getpos('.')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
71 |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
72 let button = 0x40 " wheel up. |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
73 |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
74 call feedkeys("\<Esc>[M" .. list2str([button, col, row]), 'Lx!') |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
75 call assert_equal(4, line('w0')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
76 call assert_equal([0, 7, 1, 0], getpos('.')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
77 call feedkeys("\<Esc>[M" .. list2str([button, col, row]), 'Lx!') |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
78 call assert_equal(1, line('w0')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
79 call assert_equal([0, 7, 1, 0], getpos('.')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
80 |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
81 " Test SGR mouse wheel. |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
82 set ttymouse=sgr |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
83 go |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
84 let button = 0x41 " wheel down. |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
85 let row = 1 " cursor position for mouse wheel is not relevant. |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
86 let col = 1 |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
87 |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
88 call assert_equal(1, line('w0')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
89 call assert_equal([0, 1, 1, 0], getpos('.')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
90 call feedkeys(printf("\<Esc>[<%d;%d;%dM", button, col, row), 'Lx!') |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
91 call assert_equal(4, line('w0')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
92 call assert_equal([0, 4, 1, 0], getpos('.')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
93 call feedkeys(printf("\<Esc>[<%d;%d;%dM", button, col, row), 'Lx!') |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
94 call assert_equal(7, line('w0')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
95 call assert_equal([0, 7, 1, 0], getpos('.')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
96 |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
97 let button = 0x40 " wheel up. |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
98 |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
99 call feedkeys(printf("\<Esc>[<%d;%d;%dM", button, col, row), 'Lx!') |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
100 call assert_equal(4, line('w0')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
101 call assert_equal([0, 7, 1, 0], getpos('.')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
102 call feedkeys(printf("\<Esc>[<%d;%d;%dM", button, col, row), 'Lx!') |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
103 call assert_equal(1, line('w0')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
104 call assert_equal([0, 7, 1, 0], getpos('.')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
105 call feedkeys(printf("\<Esc>[<%d;%d;%dM", button, col, row), 'Lx!') |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
106 call assert_equal(1, line('w0')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
107 call assert_equal([0, 7, 1, 0], getpos('.')) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
108 |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
109 let &mouse = save_mouse |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
110 let &term = save_term |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
111 let &ttymouse = save_ttymouse |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
112 bwipe! |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
113 endfunc |
16275
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
114 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
115 func Test_xterm_mouse_drag_window_separator() |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
116 let save_mouse = &mouse |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
117 let save_term = &term |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
118 let save_ttymouse = &ttymouse |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
119 set mouse=a |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
120 set term=xterm |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
121 set ttymouse=sgr |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
122 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
123 " Split horizontally and test dragging the horizontal window separator. |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
124 split |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
125 let rowseparator = winheight(0) + 1 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
126 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
127 let button = 0 " left down. |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
128 let row = rowseparator |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
129 let col = 1 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
130 call feedkeys(printf("\<Esc>[<%d;%d;%dM", button, col, row), 'Lx!') |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
131 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
132 let drag = 32 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
133 let row -= 1 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
134 call feedkeys(printf("\<Esc>[<%d;%d;%dM", drag, col, row), 'Lx!') |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
135 call assert_equal(rowseparator - 1, winheight(0) + 1) |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
136 let row += 1 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
137 call feedkeys(printf("\<Esc>[<%d;%d;%dM", drag, col, row), 'Lx!') |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
138 call assert_equal(rowseparator, winheight(0) + 1) |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
139 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
140 let release = 3 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
141 call feedkeys(printf("\<Esc>[<%d;%d;%dm", release, col, row), 'Lx!') |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
142 call assert_equal(rowseparator, winheight(0) + 1) |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
143 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
144 bwipe! |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
145 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
146 " Split vertically and test dragging the vertical window separator. |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
147 vsplit |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
148 let colseparator = winwidth(0) + 1 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
149 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
150 let button = 0 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
151 let row = 1 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
152 let col = colseparator |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
153 call feedkeys(printf("\<Esc>[<%d;%d;%dM", button, col, row), 'Lx!') |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
154 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
155 let drag = 32 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
156 let col -= 1 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
157 call feedkeys(printf("\<Esc>[<%d;%d;%dM", drag, col, row), 'Lx!') |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
158 call assert_equal(colseparator - 1, winwidth(0) + 1) |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
159 let col += 1 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
160 call feedkeys(printf("\<Esc>[<%d;%d;%dM", drag, col, row), 'Lx!') |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
161 call assert_equal(colseparator, winwidth(0) + 1) |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
162 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
163 let release = 3 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
164 call feedkeys(printf("\<Esc>[<%d;%d;%dm", release, col, row), 'Lx!') |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
165 call assert_equal(colseparator, winwidth(0) + 1) |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
166 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
167 bwipe! |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
168 let &mouse = save_mouse |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
169 let &term = save_term |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
170 let &ttymouse = save_ttymouse |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
171 endfunc |