Mercurial > vim
changeset 16692:2e689fb67c91 v8.1.1348
patch 8.1.1348: running tests may cause the window to move
commit https://github.com/vim/vim/commit/f8191c5f07c650b75b85c5a5b3d000fd5cae1643
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat May 18 17:22:54 2019 +0200
patch 8.1.1348: running tests may cause the window to move
Problem: Running tests may cause the window to move.
Solution: Correct the reported window position for the offset with the
position after ":winpos". Works around an xterm bug.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 18 May 2019 17:30:05 +0200 |
parents | 21feeb36354f |
children | 66aafdc47517 |
files | src/testdir/test_edit.vim src/version.c |
diffstat | 2 files changed, 20 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/testdir/test_edit.vim +++ b/src/testdir/test_edit.vim @@ -1359,9 +1359,26 @@ func Test_edit_complete_very_long_name() return endtry - " Try to get the Vim window position before setting 'columns'. + " Try to get the Vim window position before setting 'columns', so that we can + " move the window back to where it was. let winposx = getwinposx() let winposy = getwinposy() + + if winposx >= 0 && winposy >= 0 && !has('gui_running') + " We did get the window position, but xterm may report the wrong numbers. + " Move the window to the reported position and compute any offset. + exe 'winpos ' . winposx . ' ' . winposy + sleep 100m + let x = getwinposx() + if x >= 0 + let winposx += winposx - x + endif + let y = getwinposy() + if y >= 0 + let winposy += winposy - y + endif + endif + let save_columns = &columns " Need at least about 1100 columns to reproduce the problem. set columns=2000