From 9d556fc81f379aba21459bd0359e6bcd38384bfd Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Sat, 23 Jul 2022 09:27:31 +0800 Subject: vim-patch:8.2.5035: when splitting a window the changelist position moves Problem: When splitting a window the changelist position moves. Solution: Set the changelist index a bit later. (closes vim/vim#10493) https://github.com/vim/vim/commit/e6f13b473cf2c270e4eab214e09be9825320c11b Cherry-pick Test_nv_hat_count() change from patch 8.2.1593. --- src/nvim/window.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/nvim/window.c') diff --git a/src/nvim/window.c b/src/nvim/window.c index 8f52f40ef2..97ca45662e 100644 --- a/src/nvim/window.c +++ b/src/nvim/window.c @@ -1501,9 +1501,6 @@ int win_split_ins(int size, int flags, win_T *new_wp, int dir) } } - // Keep same changelist position in new window. - wp->w_changelistidx = oldwin->w_changelistidx; - // make the new window the current window win_enter_ext(wp, WEE_TRIGGER_NEW_AUTOCMDS | WEE_TRIGGER_ENTER_AUTOCMDS | WEE_TRIGGER_LEAVE_AUTOCMDS); @@ -1574,6 +1571,10 @@ static void win_init(win_T *newp, win_T *oldp, int flags) } newp->w_tagstackidx = oldp->w_tagstackidx; newp->w_tagstacklen = oldp->w_tagstacklen; + + // Keep same changelist position in new window. + newp->w_changelistidx = oldp->w_changelistidx; + copyFoldingState(oldp, newp); win_init_some(newp, oldp); -- cgit