summaryrefslogtreecommitdiff
path: root/src/proto
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2017-04-30 19:39:39 +0200
committerBram Moolenaar <Bram@vim.org>2017-04-30 19:39:39 +0200
commit29ae377ea7039874337bc79ace9ab2b37b9056e5 (patch)
treea5465827750a2fd9ee93324138a2157550af62fd /src/proto
parent45d2cca1ea3f90fc70ad99d0c6812a9d8536303c (diff)
downloadvim-git-29ae377ea7039874337bc79ace9ab2b37b9056e5.tar.gz
patch 8.0.0592: if a job writes to a buffer screen is not updatedv8.0.0592
Problem: If a job writes to a buffer and the user is typing a command, the screen isn't updated. When a message is displayed the changed buffer may cause it to be cleared. (Ramel Eshed) Solution: Update the screen and then the command line if the screen didn't scroll. Avoid inserting screen lines, as it clears any message. Update the status line when the buffer changed.
Diffstat (limited to 'src/proto')
-rw-r--r--src/proto/ex_getln.pro1
-rw-r--r--src/proto/screen.pro3
2 files changed, 3 insertions, 1 deletions
diff --git a/src/proto/ex_getln.pro b/src/proto/ex_getln.pro
index 58b635b9f..6f8290423 100644
--- a/src/proto/ex_getln.pro
+++ b/src/proto/ex_getln.pro
@@ -19,6 +19,7 @@ char_u *save_cmdline_alloc(void);
void restore_cmdline_alloc(char_u *p);
void cmdline_paste_str(char_u *s, int literally);
void redrawcmdline(void);
+void redrawcmdline_ex(int do_compute_cmdrow);
void redrawcmd(void);
void compute_cmdrow(void);
void gotocmdline(int clr);
diff --git a/src/proto/screen.pro b/src/proto/screen.pro
index 5bc3fbaaf..d98e34fd9 100644
--- a/src/proto/screen.pro
+++ b/src/proto/screen.pro
@@ -5,11 +5,12 @@ void redraw_later_clear(void);
void redraw_all_later(int type);
void redraw_curbuf_later(int type);
void redraw_buf_later(buf_T *buf, int type);
+void redraw_buf_and_status_later(buf_T *buf, int type);
int redraw_asap(int type);
void redraw_after_callback(void);
void redrawWinline(linenr_T lnum, int invalid);
void update_curbuf(int type);
-void update_screen(int type);
+void update_screen(int type_arg);
int conceal_cursor_line(win_T *wp);
void conceal_check_cursur_line(void);
void update_single_line(win_T *wp, linenr_T lnum);