diff --git a/src/nvim/window.c b/src/nvim/window.c index b68f128875..4bbdaefd1f 100644 --- a/src/nvim/window.c +++ b/src/nvim/window.c @@ -1719,21 +1719,10 @@ static void win_exchange(long Prenum) curwin->w_vsep_width = wp->w_vsep_width; wp->w_vsep_width = temp; - /* If the windows are not in the same frame, exchange the sizes to avoid - * messing up the window layout. Otherwise fix the frame sizes. */ - if (curwin->w_frame->fr_parent != wp->w_frame->fr_parent) { - temp = curwin->w_height; - curwin->w_height = wp->w_height; - wp->w_height = temp; - temp = curwin->w_width; - curwin->w_width = wp->w_width; - wp->w_width = temp; - } else { - frame_fix_height(curwin); - frame_fix_height(wp); - frame_fix_width(curwin); - frame_fix_width(wp); - } + frame_fix_height(curwin); + frame_fix_height(wp); + frame_fix_width(curwin); + frame_fix_width(wp); (void)win_comp_pos(); // recompute window positions @@ -4934,10 +4923,6 @@ static void frame_remove(frame_T *frp) frp->fr_prev->fr_next = frp->fr_next; } else { frp->fr_parent->fr_child = frp->fr_next; - // special case: topframe->fr_child == frp - if (topframe->fr_child == frp) { - topframe->fr_child = frp->fr_next; - } } if (frp->fr_next != NULL) { frp->fr_next->fr_prev = frp->fr_prev;