+9
-0
lines changedFilter options
+9
-0
lines changed Original file line number Diff line number Diff line change
@@ -2241,12 +2241,21 @@ static void leaving_window(win_T *const win)
2241
2241
// callback we need to break out of the Insert mode loop.
2242
2242
if (State & INSERT) {
2243
2243
stop_insert_mode = true;
2244
+
if (bt_prompt(win->w_buffer) && win->w_buffer->b_prompt_insert == NUL) {
2245
+
win->w_buffer->b_prompt_insert = 'A';
2246
+
}
2244
2247
}
2245
2248
}
2246
2249
2247
2250
static void entering_window(win_T *const win)
2248
2251
FUNC_ATTR_NONNULL_ALL
2249
2252
{
2253
+
// When switching to a prompt buffer that was in Insert mode, don't stop
2254
+
// Insert mode, it may have been set in leaving_window().
2255
+
if (bt_prompt(win->w_buffer) && win->w_buffer->b_prompt_insert != NUL) {
2256
+
stop_insert_mode = false;
2257
+
}
2258
+
2250
2259
// When entering the prompt window may restart Insert mode.
2251
2260
restart_edit = win->w_buffer->b_prompt_insert;
2252
2261
}
You can’t perform that action at this time.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4