aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/edit.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/edit.c')
-rw-r--r--src/nvim/edit.c21
1 files changed, 12 insertions, 9 deletions
diff --git a/src/nvim/edit.c b/src/nvim/edit.c
index 50c28dbaad..5e559462bc 100644
--- a/src/nvim/edit.c
+++ b/src/nvim/edit.c
@@ -1452,21 +1452,24 @@ ins_redraw (
}
}
- if (must_redraw)
- update_screen(0);
- else if (clear_cmdline || redraw_cmdline)
- showmode(); /* clear cmdline and show mode */
if ((conceal_update_lines
&& (conceal_old_cursor_line != conceal_new_cursor_line
|| conceal_cursor_line(curwin)))
|| need_cursor_line_redraw) {
- if (conceal_old_cursor_line != conceal_new_cursor_line)
- update_single_line(curwin, conceal_old_cursor_line);
- update_single_line(curwin, conceal_new_cursor_line == 0
- ? curwin->w_cursor.lnum : conceal_new_cursor_line);
+ if (conceal_old_cursor_line != conceal_new_cursor_line) {
+ redrawWinline(curwin, conceal_old_cursor_line);
+ }
+ redrawWinline(curwin, conceal_new_cursor_line == 0
+ ? curwin->w_cursor.lnum : conceal_new_cursor_line);
curwin->w_valid &= ~VALID_CROW;
}
- showruler(FALSE);
+
+ if (must_redraw) {
+ update_screen(0);
+ } else if (clear_cmdline || redraw_cmdline) {
+ showmode(); // clear cmdline and show mode
+ }
+ showruler(false);
setcursor();
emsg_on_display = FALSE; /* may remove error message now */
}