diff options
author | Bram Moolenaar <Bram@vim.org> | 2020-09-05 16:08:49 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2020-09-05 16:08:49 +0200 |
commit | 2ce14589f210dcb3d17d1d80285256f8ac10abab (patch) | |
tree | d2b887591c8424ce49ea6c02408a1fe033014ece /src/terminal.c | |
parent | 8b5866ded6036f7adece26b6d16962bbd2d47842 (diff) | |
download | vim-git-2ce14589f210dcb3d17d1d80285256f8ac10abab.tar.gz |
patch 8.2.1598: starting a hidden terminal resizes the current windowv8.2.1598
Problem: Starting a hidden terminal resizes the current window.
Solution: Do not resize the current window for a hidden terminal.
(closes #6872)
Diffstat (limited to 'src/terminal.c')
-rw-r--r-- | src/terminal.c | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/src/terminal.c b/src/terminal.c index 7856ad586..cab9cb9c6 100644 --- a/src/terminal.c +++ b/src/terminal.c @@ -315,18 +315,22 @@ set_term_and_win_size(term_T *term, jobopt_T *opt) else if (cols != 0) term->tl_cols = cols; - if (term->tl_rows != curwin->w_height) - win_setheight_win(term->tl_rows, curwin); - if (term->tl_cols != curwin->w_width) - win_setwidth_win(term->tl_cols, curwin); - - // Set 'winsize' now to avoid a resize at the next redraw. - if (!minsize && *curwin->w_p_tws != NUL) + if (!opt->jo_hidden) { - char_u buf[100]; + if (term->tl_rows != curwin->w_height) + win_setheight_win(term->tl_rows, curwin); + if (term->tl_cols != curwin->w_width) + win_setwidth_win(term->tl_cols, curwin); - vim_snprintf((char *)buf, 100, "%dx%d", term->tl_rows, term->tl_cols); - set_option_value((char_u *)"termwinsize", 0L, buf, OPT_LOCAL); + // Set 'winsize' now to avoid a resize at the next redraw. + if (!minsize && *curwin->w_p_tws != NUL) + { + char_u buf[100]; + + vim_snprintf((char *)buf, 100, "%dx%d", + term->tl_rows, term->tl_cols); + set_option_value((char_u *)"termwinsize", 0L, buf, OPT_LOCAL); + } } } |