aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastian Winkler <buz@netbuz.org>2015-04-29 20:29:41 +0200
committerMichael Reed <m.reed@mykolab.com>2015-04-30 15:20:16 -0400
commitdf3abf4df08606dd35126377ceec051763618836 (patch)
treec9dd8ecc0bdfcb5240ac65231c2b34ee5cee6161
parent46871d159a44d773360624d266a6bb7937510def (diff)
downloadrneovim-df3abf4df08606dd35126377ceec051763618836.tar.gz
rneovim-df3abf4df08606dd35126377ceec051763618836.tar.bz2
rneovim-df3abf4df08606dd35126377ceec051763618836.zip
vim-patch:7.4.706 #2546
Problem: Window drawn wrong when 'laststatus' is zero and there is a command-line window. (Yclept Nemo) Solution: Set the status height a bit later. (Christian Brabandt) https://github.com/vim/vim/commit/v7-4-706
-rw-r--r--src/nvim/version.c2
-rw-r--r--src/nvim/window.c9
2 files changed, 9 insertions, 2 deletions
diff --git a/src/nvim/version.c b/src/nvim/version.c
index 6b11809614..4bdd22e819 100644
--- a/src/nvim/version.c
+++ b/src/nvim/version.c
@@ -77,7 +77,7 @@ static int included_patches[] = {
//709,
//708,
//707,
- //706,
+ 706,
//705,
//704,
//703,
diff --git a/src/nvim/window.c b/src/nvim/window.c
index f93e88deb2..f69d3aa78c 100644
--- a/src/nvim/window.c
+++ b/src/nvim/window.c
@@ -911,12 +911,19 @@ int win_split_ins(int size, int flags, win_T *new_wp, int dir)
} else { /* new window below current one */
wp->w_winrow = oldwin->w_winrow + oldwin->w_height + STATUS_HEIGHT;
wp->w_status_height = oldwin->w_status_height;
- oldwin->w_status_height = STATUS_HEIGHT;
+ // Don't set the status_height for oldwin yet, this might break
+ // frame_fix_height(oldwin), therefore will be set below.
}
if (flags & WSP_BOT)
frame_add_statusline(curfrp);
frame_fix_height(wp);
frame_fix_height(oldwin);
+
+ if (!before) {
+ // New window above current one, set the status_height after
+ // frame_fix_height(oldwin)
+ oldwin->w_status_height = STATUS_HEIGHT;
+ }
}
if (flags & (WSP_TOP | WSP_BOT))