From b025474258c602dc1ff7ec61045c90c98a8511fc Mon Sep 17 00:00:00 2001 From: "Justin M. Keyes" Date: Sat, 3 Dec 2016 22:38:13 +0100 Subject: vim-patch:8.0.0110 (#5700) Closes #5616 Problem: Drop command doesn't use existing window. Solution: Check the window width properly. (Hirohito Higashi) https://github.com/vim/vim/commit/5a030a540f4157d5c9905e3564282c92b4dcec9a --- src/nvim/buffer.c | 8 +++----- src/nvim/testdir/test_tabpage.vim | 11 ++++++++++- 2 files changed, 13 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/nvim/buffer.c b/src/nvim/buffer.c index 8e6066453c..80db0e2ebc 100644 --- a/src/nvim/buffer.c +++ b/src/nvim/buffer.c @@ -4149,12 +4149,10 @@ do_arg_all ( wpnext = wp->w_next; buf = wp->w_buffer; if (buf->b_ffname == NULL - || (!keep_tabs && buf->b_nwindows > 1) - || wp->w_width != Columns - ) + || (!keep_tabs && (buf->b_nwindows > 1 || wp->w_width != Columns))) { i = opened_len; - else { - /* check if the buffer in this window is in the arglist */ + } else { + // check if the buffer in this window is in the arglist for (i = 0; i < opened_len; ++i) { if (i < alist->al_ga.ga_len && (AARGLIST(alist)[i].ae_fnum == buf->b_fnum diff --git a/src/nvim/testdir/test_tabpage.vim b/src/nvim/testdir/test_tabpage.vim index 0bf7d056de..7c3039ba24 100644 --- a/src/nvim/testdir/test_tabpage.vim +++ b/src/nvim/testdir/test_tabpage.vim @@ -40,7 +40,7 @@ function Test_tabpage() call assert_true(t:val_num == 100 && t:val_str == 'SetTabVar test' && t:val_list == ['red', 'blue', 'green']) tabclose - if has('gui') || has('clientserver') + if has('nvim') || has('gui') || has('clientserver') " Test for ":tab drop exist-file" to keep current window. sp test1 tab drop test1 @@ -64,6 +64,15 @@ function Test_tabpage() call assert_true(tabpagenr() == 2 && tabpagewinnr(2, '$') == 2 && tabpagewinnr(2) == 1) tabclose q + " + " + " Test for ":tab drop vertical-split-window" to jump test1 buffer + tabedit test1 + vnew + tabfirst + tab drop test1 + call assert_equal([2, 2, 2, 2], [tabpagenr('$'), tabpagenr(), tabpagewinnr(2, '$'), tabpagewinnr(2)]) + 1tabonly endif " " -- cgit