aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ex_docmd.c
diff options
context:
space:
mode:
authorJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2019-07-22 06:25:07 -0400
committerJustin M. Keyes <justinkz@gmail.com>2019-07-22 12:25:07 +0200
commit39549159fef535ef2d44c0ca62137bac16f469ee (patch)
tree2f23f016381ddcaa17e3a385c74553373899cf29 /src/nvim/ex_docmd.c
parentf8684bf6b9e586733c42a21f3f4c947a37bacdbc (diff)
downloadrneovim-39549159fef535ef2d44c0ca62137bac16f469ee.tar.gz
rneovim-39549159fef535ef2d44c0ca62137bac16f469ee.tar.bz2
rneovim-39549159fef535ef2d44c0ca62137bac16f469ee.zip
vim-patch:8.1.0706: introduce :redrawtabline #10570
Problem: Tabline is not always redrawn when something that is used in 'tabline' changes. Solution: Add ":redrawtabline" so that a plugin can at least cause the redraw when needed. https://github.com/vim/vim/commit/e12bab3144af8943937bd0ff4bc57f04e53037b3
Diffstat (limited to 'src/nvim/ex_docmd.c')
-rw-r--r--src/nvim/ex_docmd.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/nvim/ex_docmd.c b/src/nvim/ex_docmd.c
index 081ca8bf8e..af4f34d907 100644
--- a/src/nvim/ex_docmd.c
+++ b/src/nvim/ex_docmd.c
@@ -7874,6 +7874,22 @@ static void ex_redrawstatus(exarg_T *eap)
ui_flush();
}
+// ":redrawtabline": force redraw of the tabline
+static void ex_redrawtabline(exarg_T *eap FUNC_ATTR_UNUSED)
+{
+ const int r = RedrawingDisabled;
+ const int p = p_lz;
+
+ RedrawingDisabled = 0;
+ p_lz = false;
+
+ draw_tabline();
+
+ RedrawingDisabled = r;
+ p_lz = p;
+ ui_flush();
+}
+
static void close_redir(void)
{
if (redir_fd != NULL) {