aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/window.c
diff options
context:
space:
mode:
authorckelsel <ckelsel@hotmail.com>2017-08-17 08:20:48 +0800
committerckelsel <ckelsel@hotmail.com>2017-08-17 08:20:48 +0800
commit673fc748237345914e0ad584bc4cba997c96a37e (patch)
tree7f55a3b3dd362fbbc59ff204287a0aae99089e5e /src/nvim/window.c
parent5d332084e1ca4c29b1ccb90ea44c3b861dac5701 (diff)
parent5b32bce73c93a64970afe0e92e0a8ba2fed88619 (diff)
downloadrneovim-673fc748237345914e0ad584bc4cba997c96a37e.tar.gz
rneovim-673fc748237345914e0ad584bc4cba997c96a37e.tar.bz2
rneovim-673fc748237345914e0ad584bc4cba997c96a37e.zip
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'src/nvim/window.c')
-rw-r--r--src/nvim/window.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/nvim/window.c b/src/nvim/window.c
index faf5bceb56..081fc98816 100644
--- a/src/nvim/window.c
+++ b/src/nvim/window.c
@@ -1878,6 +1878,7 @@ int win_close(win_T *win, int free_buf)
int dir;
int help_window = FALSE;
tabpage_T *prev_curtab = curtab;
+ frame_T *win_frame = win->w_frame->fr_parent;
if (last_window()) {
EMSG(_("E444: Cannot close last window"));
@@ -2027,7 +2028,9 @@ int win_close(win_T *win, int free_buf)
check_cursor();
}
if (p_ea && (*p_ead == 'b' || *p_ead == dir)) {
- win_equal(curwin, true, dir);
+ // If the frame of the closed window contains the new current window,
+ // only resize that frame. Otherwise resize all windows.
+ win_equal(curwin, curwin->w_frame->fr_parent == win_frame, dir);
} else {
win_comp_pos();
}