fix(input): put modifiers back into typeahead buffer when needed

This commit is contained in:
zeertzjq
2022-01-23 05:58:32 +08:00
parent 7717f38d3f
commit 818456470c
6 changed files with 54 additions and 25 deletions

View File

@@ -1215,7 +1215,7 @@ void wait_return(int redraw)
} else if (vim_strchr((char_u *)"\r\n ", c) == NULL && c != Ctrl_C) {
// Put the character back in the typeahead buffer. Don't use the
// stuff buffer, because lmaps wouldn't work.
ins_char_typebuf(c);
ins_char_typebuf(c, mod_mask);
do_redraw = true; // need a redraw even though there is
// typeahead
}
@@ -3497,7 +3497,7 @@ int do_dialog(int type, char_u *title, char_u *message, char_u *buttons, int dfl
}
if (c == ':' && ex_cmd) {
retval = dfltbutton;
ins_char_typebuf(':');
ins_char_typebuf(':', 0);
break;
}