summaryrefslogtreecommitdiffstats
path: root/src/insexpand.c
diff options
context:
space:
mode:
author=?UTF-8?q?Magnus=20Gro=C3=9F?= <magnus.gross@rwth-aachen.de>2021-10-22 18:56:39 +0100
committerBram Moolenaar <Bram@vim.org>2021-10-22 18:56:39 +0100
commit25def2c8b8bd7b0c3d5f020207c717a880b05d50 (patch)
tree297dc3f2ad09266c34bdf4c518ff5ebcc588bb4d /src/insexpand.c
parenta2ffb435209716dc7aeb4783333f6ea19f5d28a7 (diff)
patch 8.2.3555: ModeChanged is not triggered on every mode changev8.2.3555
Problem: ModeChanged is not triggered on every mode change. Solution: Also trigger on minor mode changes. (Maguns Gross, closes #8999)
Diffstat (limited to 'src/insexpand.c')
-rw-r--r--src/insexpand.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/insexpand.c b/src/insexpand.c
index 6d5e556c66..c993d96701 100644
--- a/src/insexpand.c
+++ b/src/insexpand.c
@@ -243,6 +243,8 @@ ins_ctrl_x(void)
// CTRL-X in CTRL-X CTRL-V mode behaves differently to make CTRL-X
// CTRL-V look like CTRL-N
ctrl_x_mode = CTRL_X_CMDLINE_CTRL_X;
+
+ trigger_modechanged();
}
/*
@@ -2150,6 +2152,8 @@ ins_compl_prep(int c)
// upon the (possibly failed) completion.
ins_apply_autocmds(EVENT_COMPLETEDONE);
+ trigger_modechanged();
+
// reset continue_* if we left expansion-mode, if we stay they'll be
// (re)set properly in ins_complete()
if (!vim_is_ctrl_x_key(c))
@@ -2487,6 +2491,7 @@ set_completion(colnr_T startcol, list_T *list)
// Lazily show the popup menu, unless we got interrupted.
if (!compl_interrupted)
show_pum(save_w_wrow, save_w_leftcol);
+ trigger_modechanged();
out_flush();
}
@@ -3255,6 +3260,8 @@ ins_compl_get_exp(pos_T *ini)
if (compl_curr_match == NULL)
compl_curr_match = compl_old_match;
}
+ trigger_modechanged();
+
return i;
}