diff options
author | zeertzjq <zeertzjq@outlook.com> | 2022-07-23 09:27:31 +0800 |
---|---|---|
committer | zeertzjq <zeertzjq@outlook.com> | 2022-07-23 09:48:24 +0800 |
commit | 9d556fc81f379aba21459bd0359e6bcd38384bfd (patch) | |
tree | e9adaa0a0c77e8d7d2b23006cf253cf572e34513 /src/nvim/window.c | |
parent | 91c99eed540a329b7738bd2f28259f8ac0670ef2 (diff) | |
download | rneovim-9d556fc81f379aba21459bd0359e6bcd38384bfd.tar.gz rneovim-9d556fc81f379aba21459bd0359e6bcd38384bfd.tar.bz2 rneovim-9d556fc81f379aba21459bd0359e6bcd38384bfd.zip |
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.
Diffstat (limited to 'src/nvim/window.c')
-rw-r--r-- | src/nvim/window.c | 7 |
1 files changed, 4 insertions, 3 deletions
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); |