mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
Merge pull request #21591 from zeertzjq/vim-8.2.3773
vim-patch:8.2.{3773,3774}
This commit is contained in:
commit
cb9d68fe6d
@ -11,6 +11,7 @@
|
|||||||
"after_each",
|
"after_each",
|
||||||
"setup",
|
"setup",
|
||||||
"teardown",
|
"teardown",
|
||||||
|
"finally",
|
||||||
"lfs"
|
"lfs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -903,7 +903,8 @@ struct tabpage_S {
|
|||||||
win_T *tp_firstwin; ///< first window in this Tab page
|
win_T *tp_firstwin; ///< first window in this Tab page
|
||||||
win_T *tp_lastwin; ///< last window in this Tab page
|
win_T *tp_lastwin; ///< last window in this Tab page
|
||||||
long tp_old_Rows_avail; ///< ROWS_AVAIL when Tab page was left
|
long tp_old_Rows_avail; ///< ROWS_AVAIL when Tab page was left
|
||||||
long tp_old_Columns; ///< Columns when Tab page was left
|
long tp_old_Columns; ///< Columns when Tab page was left, -1 when
|
||||||
|
///< calling win_new_screen_cols() postponed
|
||||||
long tp_ch_used; ///< value of 'cmdheight' when frame size was set
|
long tp_ch_used; ///< value of 'cmdheight' when frame size was set
|
||||||
|
|
||||||
diff_T *tp_first_diff;
|
diff_T *tp_first_diff;
|
||||||
|
@ -4277,7 +4277,9 @@ static int leave_tabpage(buf_T *new_curbuf, bool trigger_leave_autocmds)
|
|||||||
tp->tp_firstwin = firstwin;
|
tp->tp_firstwin = firstwin;
|
||||||
tp->tp_lastwin = lastwin;
|
tp->tp_lastwin = lastwin;
|
||||||
tp->tp_old_Rows_avail = ROWS_AVAIL;
|
tp->tp_old_Rows_avail = ROWS_AVAIL;
|
||||||
tp->tp_old_Columns = Columns;
|
if (tp->tp_old_Columns != -1) {
|
||||||
|
tp->tp_old_Columns = Columns;
|
||||||
|
}
|
||||||
firstwin = NULL;
|
firstwin = NULL;
|
||||||
lastwin = NULL;
|
lastwin = NULL;
|
||||||
return OK;
|
return OK;
|
||||||
@ -4340,8 +4342,13 @@ static void enter_tabpage(tabpage_T *tp, buf_T *old_curbuf, bool trigger_enter_a
|
|||||||
if (curtab->tp_old_Rows_avail != ROWS_AVAIL || (old_off != firstwin->w_winrow)) {
|
if (curtab->tp_old_Rows_avail != ROWS_AVAIL || (old_off != firstwin->w_winrow)) {
|
||||||
win_new_screen_rows();
|
win_new_screen_rows();
|
||||||
}
|
}
|
||||||
if (curtab->tp_old_Columns != Columns && starting == 0) {
|
if (curtab->tp_old_Columns != Columns) {
|
||||||
win_new_screen_cols(); // update window widths
|
if (starting == 0) {
|
||||||
|
win_new_screen_cols(); // update window widths
|
||||||
|
curtab->tp_old_Columns = Columns;
|
||||||
|
} else {
|
||||||
|
curtab->tp_old_Columns = -1; // update window widths later
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
lastused_tabpage = old_curtab;
|
lastused_tabpage = old_curtab;
|
||||||
|
@ -465,6 +465,19 @@ describe('startup', function()
|
|||||||
clear{args={'--cmd', 'set packpath^=test/functional/fixtures', '--cmd', [[ lua _G.test_loadorder = {} vim.cmd "runtime! filen.lua" ]]}, env={XDG_CONFIG_HOME='test/functional/fixtures/'}}
|
clear{args={'--cmd', 'set packpath^=test/functional/fixtures', '--cmd', [[ lua _G.test_loadorder = {} vim.cmd "runtime! filen.lua" ]]}, env={XDG_CONFIG_HOME='test/functional/fixtures/'}}
|
||||||
eq({'ordinary', 'FANCY', 'FANCY after', 'ordinary after'}, exec_lua [[ return _G.test_loadorder ]])
|
eq({'ordinary', 'FANCY', 'FANCY after', 'ordinary after'}, exec_lua [[ return _G.test_loadorder ]])
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
it('window widths are correct when modelines set &columns with tabpages', function()
|
||||||
|
write_file('tab1.noft', 'vim: columns=81')
|
||||||
|
write_file('tab2.noft', 'vim: columns=81')
|
||||||
|
finally(function()
|
||||||
|
os.remove('tab1.noft')
|
||||||
|
os.remove('tab2.noft')
|
||||||
|
end)
|
||||||
|
clear({args = {'-p', 'tab1.noft', 'tab2.noft'}})
|
||||||
|
eq(81, meths.win_get_width(0))
|
||||||
|
command('tabnext')
|
||||||
|
eq(81, meths.win_get_width(0))
|
||||||
|
end)
|
||||||
end)
|
end)
|
||||||
|
|
||||||
describe('sysinit', function()
|
describe('sysinit', function()
|
||||||
|
Loading…
Reference in New Issue
Block a user