summaryrefslogtreecommitdiffstats
path: root/src/edit.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/edit.c')
-rw-r--r--src/edit.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/edit.c b/src/edit.c
index 88fd18af1d..5d609519ac 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -1593,6 +1593,21 @@ ins_redraw(ready)
last_cursormoved = curwin->w_cursor;
}
#endif
+#ifdef FEAT_AUTOCMD
+ /* Trigger TextChangedI if b_changedtick differs. */
+ if (!ready && has_textchangedI()
+ && last_changedtick != curbuf->b_changedtick
+# ifdef FEAT_INS_EXPAND
+ && !pum_visible()
+# endif
+ )
+ {
+ if (last_changedtick_buf == curbuf)
+ apply_autocmds(EVENT_TEXTCHANGEDI, NULL, NULL, FALSE, curbuf);
+ last_changedtick_buf = curbuf;
+ last_changedtick = curbuf->b_changedtick;
+ }
+#endif
if (must_redraw)
update_screen(0);
else if (clear_cmdline || redraw_cmdline)