X-Git-Url: https://git.tokkee.org/?p=tig.git;a=blobdiff_plain;f=tig.c;h=16cfaa294815989412368ae3c91759a066c671de;hp=8bed28e8b72fede7d1d476e571b7a00e03b2d9f7;hb=16f9664dc3626f0f30f6a680913e93b104cccca1;hpb=8f2046c514645767395d2ee735a99ab2358d42b9 diff --git a/tig.c b/tig.c index 8bed28e..16cfaa2 100644 --- a/tig.c +++ b/tig.c @@ -2717,6 +2717,29 @@ load_view(struct view *view, enum open_flags flags) #define refresh_view(view) load_view(view, OPEN_REFRESH) +static void +split_view(struct view *prev, struct view *view) +{ + display[1] = view; + current_view = 1; + view->parent = prev; + resize_display(); + + if (prev->lineno - prev->offset >= prev->height) { + /* Take the title line into account. */ + int lines = prev->lineno - prev->offset - prev->height + 1; + + /* Scroll the view that was split if the current line is + * outside the new limited view. */ + do_scroll_view(prev, lines); + } + + if (view != prev && view_is_displayed(prev)) { + /* "Blur" the previous view. */ + update_view_title(prev); + } +} + static void open_view(struct view *prev, enum request request, enum open_flags flags) { @@ -2738,24 +2761,7 @@ open_view(struct view *prev, enum request request, enum open_flags flags) } if (split) { - display[1] = view; - current_view = 1; - view->parent = prev; - resize_display(); - - if (prev->lineno - prev->offset >= prev->height) { - /* Take the title line into account. */ - int lines = prev->lineno - prev->offset - prev->height + 1; - - /* Scroll the view that was split if the current line is - * outside the new limited view. */ - do_scroll_view(prev, lines); - } - - if (view != prev && view_is_displayed(prev)) { - /* "Blur" the previous view. */ - update_view_title(prev); - } + split_view(prev, view); } else { maximize_view(view, FALSE); }