diff options
author | Bram Moolenaar <Bram@vim.org> | 2016-07-19 23:13:03 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2016-07-19 23:13:03 +0200 |
commit | 12c11d553053f5a9eae9eb3c518279b12fa928c2 (patch) | |
tree | 9516b5c3300a1799e1a5657457dedd7e8d526749 /src/window.c | |
parent | 4f0383bc3fe5af0229fb66b53fe94329af783eff (diff) | |
download | vim-git-12c11d553053f5a9eae9eb3c518279b12fa928c2.tar.gz |
patch 7.4.2077v7.4.2077
Problem: Cannot update 'tabline' when a tab was closed.
Solution: Add the TabClosed autocmd event. (partly by Felipe Morales)
Diffstat (limited to 'src/window.c')
-rw-r--r-- | src/window.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/window.c b/src/window.c index bf650f84b..4fbe6ca58 100644 --- a/src/window.c +++ b/src/window.c @@ -2095,6 +2095,9 @@ close_windows( win_T *wp; tabpage_T *tp, *nexttp; int h = tabline_height(); +#ifdef FEAT_AUTOCMD + int count = tabpage_index(NULL); +#endif ++RedrawingDisabled; @@ -2138,6 +2141,11 @@ close_windows( --RedrawingDisabled; +#ifdef FEAT_AUTOCMD + if (count != tabpage_index(NULL)) + apply_autocmds(EVENT_TABCLOSED, NULL, NULL, FALSE, curbuf); +#endif + redraw_tabline = TRUE; if (h != tabline_height()) shell_new_rows(); @@ -2220,6 +2228,7 @@ close_last_window_tabpage( /* Since goto_tabpage_tp above did not trigger *Enter autocommands, do * that now. */ #ifdef FEAT_AUTOCMD + apply_autocmds(EVENT_TABCLOSED, NULL, NULL, FALSE, curbuf); apply_autocmds(EVENT_WINENTER, NULL, NULL, FALSE, curbuf); apply_autocmds(EVENT_TABENTER, NULL, NULL, FALSE, curbuf); if (old_curbuf != curbuf) |