patch 9.0.0825: cannot drag an entry in the tabpage line
Problem: Cannot drag an entry in the tabpage line.
Solution: Clear dragwin instead of got_click. (closes #11483,
closes #11482)
diff --git a/src/testdir/test_termcodes.vim b/src/testdir/test_termcodes.vim
index cb9897e..0b2365e 100644
--- a/src/testdir/test_termcodes.vim
+++ b/src/testdir/test_termcodes.vim
@@ -562,11 +562,7 @@
call MouseLeftClick(row, col)
let row -= 1
call MouseLeftDrag(row, col)
- " FIXME: for unknown reason this test fails, related to calling
- " reset_mouse_got_click() earlier.
- if ttymouse_val !=# 'xterm2'
- call assert_equal(rowseparator - 1, winheight(0) + 1, msg)
- endif
+ call assert_equal(rowseparator - 1, winheight(0) + 1, msg)
let row += 1
call MouseLeftDrag(row, col)
call assert_equal(rowseparator, winheight(0) + 1, msg)
@@ -779,6 +775,28 @@
\ 'Tab page 2',
\ ' Xtab1'], a, msg)
+ " Switch to tab1
+ tabnext
+ let a = split(execute(':tabs'), "\n")
+ call assert_equal(['Tab page 1',
+ \ ' Xtab2',
+ \ 'Tab page 2',
+ \ '> Xtab1'], a, msg)
+
+ " Click in tab2 and drag it to tab1.
+ " This time it is non-current tab.
+ call MouseLeftClick(row, 6)
+ call assert_equal(0, getcharmod(), msg)
+ for col in [7, 8, 9, 10]
+ call MouseLeftDrag(row, col)
+ endfor
+ call MouseLeftRelease(row, col)
+ let a = split(execute(':tabs'), "\n")
+ call assert_equal(['Tab page 1',
+ \ ' Xtab1',
+ \ 'Tab page 2',
+ \ '> Xtab2'], a, msg)
+
" Click elsewhere so that click in next iteration is not
" interpreted as unwanted double-click.
call MouseLeftClick(row, 11)