aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJosh Triplett <josh@joshtriplett.org>2018-09-09 15:14:14 -0700
committerJustin M. Keyes <justinkz@gmail.com>2018-09-25 08:47:48 +0200
commit8240b8b596da48215d0e6032e587cd6242e6f014 (patch)
tree6288af524c91cbb9d9871de5d47d876fe3f5e45e /src
parent7862c3ae3ecffdcd7bbd3c63e72d272ccd37db1a (diff)
downloadrneovim-8240b8b596da48215d0e6032e587cd6242e6f014.tar.gz
rneovim-8240b8b596da48215d0e6032e587cd6242e6f014.tar.bz2
rneovim-8240b8b596da48215d0e6032e587cd6242e6f014.zip
terminal: Redraw statusline on title change #8973
The statusline may incorporate b:term_title, so redraw it when that title changes. Introduce a new function status_redraw_buf to redraw windows associated with the current buffer.
Diffstat (limited to 'src')
-rw-r--r--src/nvim/screen.c14
-rw-r--r--src/nvim/terminal.c1
2 files changed, 10 insertions, 5 deletions
diff --git a/src/nvim/screen.c b/src/nvim/screen.c
index fe6a15c5fc..ec4b31c40d 100644
--- a/src/nvim/screen.c
+++ b/src/nvim/screen.c
@@ -4588,14 +4588,18 @@ void status_redraw_all(void)
}
}
-/*
- * mark all status lines of the current buffer for redraw
- */
+/// Marks all status lines of the current buffer for redraw.
void status_redraw_curbuf(void)
{
+ status_redraw_buf(curbuf);
+}
+
+/// Marks all status lines of the specified buffer for redraw.
+void status_redraw_buf(buf_T *buf)
+{
FOR_ALL_WINDOWS_IN_TAB(wp, curtab) {
- if (wp->w_status_height != 0 && wp->w_buffer == curbuf) {
- wp->w_redr_status = TRUE;
+ if (wp->w_status_height != 0 && wp->w_buffer == buf) {
+ wp->w_redr_status = true;
redraw_later(VALID);
}
}
diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c
index d83986cb15..d831979022 100644
--- a/src/nvim/terminal.c
+++ b/src/nvim/terminal.c
@@ -668,6 +668,7 @@ static void buf_set_term_title(buf_T *buf, char *title)
false,
&err);
api_clear_error(&err);
+ status_redraw_buf(buf);
}
static int term_settermprop(VTermProp prop, VTermValue *val, void *data)