From 86032702932995db74fed265ba99ae0c823cb75d Mon Sep 17 00:00:00 2001 From: Christian Brabandt Date: Sun, 31 Mar 2024 18:38:09 +0200 Subject: patch 9.1.0230: TextChanged autocommand not triggered under some circumstances Problem: TextChanged autocommand not triggered under some circumstances (Sergey Vlasov) Solution: Trigger TextChanged when TextChangedI has not been triggered fixes: #14332 closes: #14339 Signed-off-by: Christian Brabandt --- src/edit.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/edit.c') diff --git a/src/edit.c b/src/edit.c index efa32f51e7..2f28562086 100644 --- a/src/edit.c +++ b/src/edit.c @@ -845,9 +845,10 @@ doESCkey: did_cursorhold = FALSE; // ins_redraw() triggers TextChangedI only when no characters - // are in the typeahead buffer, so only reset curbuf->b_last_changedtick + // are in the typeahead buffer, so reset curbuf->b_last_changedtick only // if the TextChangedI was not blocked by char_avail() (e.g. using :norm!) - if (!char_avail()) + // and the TextChangeDI autocommand has been trigered + if (!char_avail() && curbuf->b_last_changedtick_i == CHANGEDTICK(curbuf)) curbuf->b_last_changedtick = CHANGEDTICK(curbuf); return (c == Ctrl_O); } -- cgit v1.2.3