diff options
author | Bram Moolenaar <Bram@vim.org> | 2018-02-10 18:15:19 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2018-02-10 18:15:19 +0100 |
commit | 5a093437199001a0d60d8e18e2b9539b99a7757c (patch) | |
tree | 4897a21d58c38ac3adc0c3b309381a58f4bbde45 /src/fileio.c | |
parent | 9b56a57cdae31f7a2c85d440392bf63d3253a158 (diff) |
patch 8.0.1494: no autocmd triggered in Insert mode with visible popup menuv8.0.1494
Problem: No autocmd triggered in Insert mode with visible popup menu.
Solution: Add TextChangedP. (Prabir Shrestha, Christian Brabandt,
closes #2372, closes #1691)
Fix that the TextChanged autocommands are not always triggered
when sourcing a script.
Diffstat (limited to 'src/fileio.c')
-rw-r--r-- | src/fileio.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/fileio.c b/src/fileio.c index ab216abbf6..d4735f344e 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -5037,9 +5037,8 @@ restore_backup: #ifdef FEAT_AUTOCMD /* b:changedtick is always incremented in unchanged() but that * should not trigger a TextChanged event. */ - if (last_changedtick + 1 == CHANGEDTICK(buf) - && last_changedtick_buf == buf) - last_changedtick = CHANGEDTICK(buf); + if (buf->b_last_changedtick + 1 == CHANGEDTICK(buf)) + buf->b_last_changedtick = CHANGEDTICK(buf); #endif u_unchanged(buf); u_update_save_nr(buf); @@ -7851,6 +7850,7 @@ static struct event_name {"TermResponse", EVENT_TERMRESPONSE}, {"TextChanged", EVENT_TEXTCHANGED}, {"TextChangedI", EVENT_TEXTCHANGEDI}, + {"TextChangedP", EVENT_TEXTCHANGEDP}, {"User", EVENT_USER}, {"VimEnter", EVENT_VIMENTER}, {"VimLeave", EVENT_VIMLEAVE}, @@ -9377,6 +9377,15 @@ has_textchangedI(void) } /* + * Return TRUE when there is a TextChangedP autocommand defined. + */ + int +has_textchangedP(void) +{ + return (first_autopat[(int)EVENT_TEXTCHANGEDP] != NULL); +} + +/* * Return TRUE when there is an InsertCharPre autocommand defined. */ int |