diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2018-05-19 11:48:37 +0200 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2018-05-19 11:48:37 +0200 |
commit | fb28b0c734c259b0964615ea2ddeb4aabeb23fe8 (patch) | |
tree | 2f4a9a7217955b5dd37632bb4fb6e31b1bda2afb /src/nvim/edit.c | |
parent | a82ac8accb0dba4c13b670c69f0024c94c59cdd4 (diff) | |
parent | d995825c6627dd99213aeeecef56663d4655f701 (diff) | |
download | rneovim-fb28b0c734c259b0964615ea2ddeb4aabeb23fe8.tar.gz rneovim-fb28b0c734c259b0964615ea2ddeb4aabeb23fe8.tar.bz2 rneovim-fb28b0c734c259b0964615ea2ddeb4aabeb23fe8.zip |
Merge #8377 'TextChangedP autocommand'
Diffstat (limited to 'src/nvim/edit.c')
-rw-r--r-- | src/nvim/edit.c | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/src/nvim/edit.c b/src/nvim/edit.c index a1987cf2d5..462762aea0 100644 --- a/src/nvim/edit.c +++ b/src/nvim/edit.c @@ -1387,13 +1387,20 @@ ins_redraw ( // Trigger TextChangedI if b_changedtick differs. if (ready && has_event(EVENT_TEXTCHANGEDI) - && last_changedtick != curbuf->b_changedtick + && curbuf->b_last_changedtick != curbuf->b_changedtick && !pum_visible()) { - if (last_changedtick_buf == curbuf) { - apply_autocmds(EVENT_TEXTCHANGEDI, NULL, NULL, false, curbuf); - } - last_changedtick_buf = curbuf; - last_changedtick = curbuf->b_changedtick; + apply_autocmds(EVENT_TEXTCHANGEDI, NULL, NULL, false, curbuf); + curbuf->b_last_changedtick = curbuf->b_changedtick; + } + + // Trigger TextChangedP if b_changedtick differs. When the popupmenu closes + // TextChangedI will need to trigger for backwards compatibility, thus use + // different b_last_changedtick* variables. + if (ready && has_event(EVENT_TEXTCHANGEDP) + && curbuf->b_last_changedtick_pum != curbuf->b_changedtick + && pum_visible()) { + apply_autocmds(EVENT_TEXTCHANGEDP, NULL, NULL, false, curbuf); + curbuf->b_last_changedtick_pum = curbuf->b_changedtick; } if (must_redraw) |