patch 9.1.1394: tabpanel not correctly redrawn on tabonly
Problem: tabpanel not correctly redrawn on tabonly
(Maxim Kim, after v9.1.1391)
Solution: force redraw of the tabpanel, tweak style
(Hirohito Higashi)
fixes: #17322
closes: #17330
Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
ba19b65899
commit
c659e4a516
@ -1,6 +1,6 @@
|
|||||||
/* tabpanel.c */
|
/* tabpanel.c */
|
||||||
int tabpanel_width(void);
|
int tabpanel_width(void);
|
||||||
int tabpanel_leftcol(win_T *wp);
|
int tabpanel_leftcol(win_T *wp);
|
||||||
int tabpanelopt_changed(void);
|
int tabpanelopt_changed(void);
|
||||||
void draw_tabpanel(void);
|
void draw_tabpanel(void);
|
||||||
int get_tabpagenr_on_tabpanel(void);
|
int get_tabpagenr_on_tabpanel(void);
|
||||||
|
|||||||
101
src/tabpanel.c
101
src/tabpanel.c
@ -16,7 +16,7 @@
|
|||||||
#if defined(FEAT_TABPANEL) || defined(PROTO)
|
#if defined(FEAT_TABPANEL) || defined(PROTO)
|
||||||
|
|
||||||
static void do_by_tplmode(int tplmode, int col_start, int col_end,
|
static void do_by_tplmode(int tplmode, int col_start, int col_end,
|
||||||
int* pcurtab_row, int* ptabpagenr);
|
int *pcurtab_row, int *ptabpagenr);
|
||||||
|
|
||||||
// set pcurtab_row. don't redraw tabpanel.
|
// set pcurtab_row. don't redraw tabpanel.
|
||||||
#define TPLMODE_GET_CURTAB_ROW 0
|
#define TPLMODE_GET_CURTAB_ROW 0
|
||||||
@ -29,10 +29,6 @@ static void do_by_tplmode(int tplmode, int col_start, int col_end,
|
|||||||
|
|
||||||
#define VERT_LEN 1
|
#define VERT_LEN 1
|
||||||
|
|
||||||
// tpl_vert's values
|
|
||||||
#define VERT_OFF 0
|
|
||||||
#define VERT_ON 1
|
|
||||||
|
|
||||||
// tpl_align's values
|
// tpl_align's values
|
||||||
#define ALIGN_LEFT 0
|
#define ALIGN_LEFT 0
|
||||||
#define ALIGN_RIGHT 1
|
#define ALIGN_RIGHT 1
|
||||||
@ -41,7 +37,7 @@ static char_u *opt_name = (char_u *)"tabpanel";
|
|||||||
static int opt_scope = OPT_LOCAL;
|
static int opt_scope = OPT_LOCAL;
|
||||||
static int tpl_align = ALIGN_LEFT;
|
static int tpl_align = ALIGN_LEFT;
|
||||||
static int tpl_columns = 20;
|
static int tpl_columns = 20;
|
||||||
static int tpl_vert = VERT_OFF;
|
static int tpl_is_vert = FALSE;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
win_T *wp;
|
win_T *wp;
|
||||||
@ -62,7 +58,7 @@ tabpanelopt_changed(void)
|
|||||||
char_u *p;
|
char_u *p;
|
||||||
int new_align = ALIGN_LEFT;
|
int new_align = ALIGN_LEFT;
|
||||||
int new_columns = 20;
|
int new_columns = 20;
|
||||||
int new_vert = VERT_OFF;
|
int new_is_vert = FALSE;
|
||||||
|
|
||||||
p = p_tplo;
|
p = p_tplo;
|
||||||
while (*p != NUL)
|
while (*p != NUL)
|
||||||
@ -85,7 +81,7 @@ tabpanelopt_changed(void)
|
|||||||
else if (STRNCMP(p, "vert", 4) == 0)
|
else if (STRNCMP(p, "vert", 4) == 0)
|
||||||
{
|
{
|
||||||
p += 4;
|
p += 4;
|
||||||
new_vert = VERT_ON;
|
new_is_vert = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (*p != ',' && *p != NUL)
|
if (*p != ',' && *p != NUL)
|
||||||
@ -96,7 +92,7 @@ tabpanelopt_changed(void)
|
|||||||
|
|
||||||
tpl_align = new_align;
|
tpl_align = new_align;
|
||||||
tpl_columns = new_columns;
|
tpl_columns = new_columns;
|
||||||
tpl_vert = new_vert;
|
tpl_is_vert = new_is_vert;
|
||||||
|
|
||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
@ -130,9 +126,7 @@ tabpanel_width(void)
|
|||||||
int
|
int
|
||||||
tabpanel_leftcol(win_T *wp)
|
tabpanel_leftcol(win_T *wp)
|
||||||
{
|
{
|
||||||
if (cmdline_pum_active())
|
if (cmdline_pum_active() || (wp != NULL && WIN_IS_POPUP(wp)))
|
||||||
return 0;
|
|
||||||
else if (wp != NULL && WIN_IS_POPUP(wp))
|
|
||||||
return 0;
|
return 0;
|
||||||
else
|
else
|
||||||
return tpl_align == ALIGN_RIGHT ? 0 : tabpanel_width();
|
return tpl_align == ALIGN_RIGHT ? 0 : tabpanel_width();
|
||||||
@ -156,7 +150,7 @@ draw_tabpanel(void)
|
|||||||
int vsrow = 0;
|
int vsrow = 0;
|
||||||
int is_right = tpl_align == ALIGN_RIGHT;
|
int is_right = tpl_align == ALIGN_RIGHT;
|
||||||
|
|
||||||
if (0 == maxwidth)
|
if (maxwidth == 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
#ifndef MSWIN
|
#ifndef MSWIN
|
||||||
@ -168,8 +162,7 @@ int vsrow = 0;
|
|||||||
else
|
else
|
||||||
off = LineOffset[row];
|
off = LineOffset[row];
|
||||||
|
|
||||||
vim_memset(ScreenLines + off, ' ',
|
vim_memset(ScreenLines + off, ' ', (size_t)maxwidth * sizeof(schar_T));
|
||||||
(size_t)maxwidth * sizeof(schar_T));
|
|
||||||
if (enc_utf8)
|
if (enc_utf8)
|
||||||
vim_memset(ScreenLinesUC + off, -1,
|
vim_memset(ScreenLinesUC + off, -1,
|
||||||
(size_t)maxwidth * sizeof(u8char_T));
|
(size_t)maxwidth * sizeof(u8char_T));
|
||||||
@ -179,7 +172,7 @@ int vsrow = 0;
|
|||||||
// Reset got_int to avoid build_stl_str_hl() isn't evaluted.
|
// Reset got_int to avoid build_stl_str_hl() isn't evaluted.
|
||||||
got_int = FALSE;
|
got_int = FALSE;
|
||||||
|
|
||||||
if (tpl_vert == VERT_ON)
|
if (tpl_is_vert)
|
||||||
{
|
{
|
||||||
if (is_right)
|
if (is_right)
|
||||||
{
|
{
|
||||||
@ -237,7 +230,7 @@ get_tabpagenr_on_tabpanel(void)
|
|||||||
int curtab_row = 0;
|
int curtab_row = 0;
|
||||||
int tabpagenr = 0;
|
int tabpagenr = 0;
|
||||||
|
|
||||||
if (0 == maxwidth)
|
if (maxwidth == 0)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
do_by_tplmode(TPLMODE_GET_CURTAB_ROW, 0, maxwidth, &curtab_row, NULL);
|
do_by_tplmode(TPLMODE_GET_CURTAB_ROW, 0, maxwidth, &curtab_row, NULL);
|
||||||
@ -260,7 +253,7 @@ screen_fill_tailing_area(
|
|||||||
int attr)
|
int attr)
|
||||||
{
|
{
|
||||||
int is_right = tpl_align == ALIGN_RIGHT;
|
int is_right = tpl_align == ALIGN_RIGHT;
|
||||||
if (TPLMODE_REDRAW == tplmode)
|
if (tplmode == TPLMODE_REDRAW)
|
||||||
screen_fill(row_start, row_end,
|
screen_fill(row_start, row_end,
|
||||||
(is_right ? COLUMNS_WITHOUT_TPL() : 0) + col_start,
|
(is_right ? COLUMNS_WITHOUT_TPL() : 0) + col_start,
|
||||||
(is_right ? COLUMNS_WITHOUT_TPL() : 0) + col_end,
|
(is_right ? COLUMNS_WITHOUT_TPL() : 0) + col_end,
|
||||||
@ -282,19 +275,19 @@ screen_puts_len_for_tabpanel(
|
|||||||
int chlen;
|
int chlen;
|
||||||
int chcells;
|
int chcells;
|
||||||
char_u buf[IOSIZE];
|
char_u buf[IOSIZE];
|
||||||
char_u* temp;
|
char_u *temp;
|
||||||
|
|
||||||
for (j = 0; j < len;)
|
for (j = 0; j < len;)
|
||||||
{
|
{
|
||||||
if ((TPLMODE_GET_CURTAB_ROW != tplmode)
|
if (tplmode != TPLMODE_GET_CURTAB_ROW
|
||||||
&& (pargs->maxrow <= (*pargs->prow - pargs->offsetrow)))
|
&& pargs->maxrow <= *pargs->prow - pargs->offsetrow)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
if ((p[j] == '\n') || (p[j] == '\r'))
|
if (p[j] == '\n' || p[j] == '\r')
|
||||||
{
|
{
|
||||||
// fill the tailing area of current row.
|
// fill the tailing area of current row.
|
||||||
if (0 <= (*pargs->prow - pargs->offsetrow)
|
if (*pargs->prow - pargs->offsetrow >= 0
|
||||||
&& (*pargs->prow - pargs->offsetrow) < pargs->maxrow)
|
&& *pargs->prow - pargs->offsetrow < pargs->maxrow)
|
||||||
screen_fill_tailing_area(tplmode,
|
screen_fill_tailing_area(tplmode,
|
||||||
*pargs->prow - pargs->offsetrow,
|
*pargs->prow - pargs->offsetrow,
|
||||||
*pargs->prow - pargs->offsetrow + 1,
|
*pargs->prow - pargs->offsetrow + 1,
|
||||||
@ -331,8 +324,8 @@ screen_puts_len_for_tabpanel(
|
|||||||
if (pargs->col_end < (*pargs->pcol) + chcells)
|
if (pargs->col_end < (*pargs->pcol) + chcells)
|
||||||
{
|
{
|
||||||
// fill the tailing area of current row.
|
// fill the tailing area of current row.
|
||||||
if (0 <= (*pargs->prow - pargs->offsetrow)
|
if (*pargs->prow - pargs->offsetrow >= 0
|
||||||
&& (*pargs->prow - pargs->offsetrow) < pargs->maxrow)
|
&& *pargs->prow - pargs->offsetrow < pargs->maxrow)
|
||||||
screen_fill_tailing_area(tplmode,
|
screen_fill_tailing_area(tplmode,
|
||||||
*pargs->prow - pargs->offsetrow,
|
*pargs->prow - pargs->offsetrow,
|
||||||
*pargs->prow - pargs->offsetrow + 1,
|
*pargs->prow - pargs->offsetrow + 1,
|
||||||
@ -343,17 +336,17 @@ screen_puts_len_for_tabpanel(
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((*pargs->pcol) + chcells <= pargs->col_end)
|
if (*pargs->pcol + chcells <= pargs->col_end)
|
||||||
{
|
{
|
||||||
int off = (tpl_align == ALIGN_RIGHT)
|
int off = (tpl_align == ALIGN_RIGHT)
|
||||||
? COLUMNS_WITHOUT_TPL()
|
? COLUMNS_WITHOUT_TPL()
|
||||||
: 0;
|
: 0;
|
||||||
if ((TPLMODE_REDRAW == tplmode)
|
if (TPLMODE_REDRAW == tplmode
|
||||||
&& (0 <= (*pargs->prow - pargs->offsetrow)
|
&& (*pargs->prow - pargs->offsetrow >= 0
|
||||||
&& (*pargs->prow - pargs->offsetrow) < pargs->maxrow))
|
&& *pargs->prow - pargs->offsetrow < pargs->maxrow))
|
||||||
screen_puts(buf, *pargs->prow - pargs->offsetrow,
|
screen_puts(buf, *pargs->prow - pargs->offsetrow,
|
||||||
*pargs->pcol + off, attr);
|
*pargs->pcol + off, attr);
|
||||||
(*pargs->pcol) += chcells;
|
*pargs->pcol += chcells;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -376,9 +369,9 @@ draw_tabpanel_default(int tplmode, tabpanel_T *pargs)
|
|||||||
if (bufIsChanged(pargs->wp->w_buffer))
|
if (bufIsChanged(pargs->wp->w_buffer))
|
||||||
modified = TRUE;
|
modified = TRUE;
|
||||||
|
|
||||||
if (modified || 1 < wincount)
|
if (modified || wincount > 1)
|
||||||
{
|
{
|
||||||
if (1 < wincount)
|
if (wincount > 1)
|
||||||
{
|
{
|
||||||
vim_snprintf((char *)NameBuff, MAXPATHL, "%d", wincount);
|
vim_snprintf((char *)NameBuff, MAXPATHL, "%d", wincount);
|
||||||
len = (int)STRLEN(NameBuff);
|
len = (int)STRLEN(NameBuff);
|
||||||
@ -406,8 +399,8 @@ draw_tabpanel_default(int tplmode, tabpanel_T *pargs)
|
|||||||
screen_puts_len_for_tabpanel(tplmode, NameBuff, len, pargs->attr, pargs);
|
screen_puts_len_for_tabpanel(tplmode, NameBuff, len, pargs->attr, pargs);
|
||||||
|
|
||||||
// fill the tailing area of current row.
|
// fill the tailing area of current row.
|
||||||
if (0 <= (*pargs->prow - pargs->offsetrow)
|
if (*pargs->prow - pargs->offsetrow >= 0
|
||||||
&& (*pargs->prow - pargs->offsetrow) < pargs->maxrow)
|
&& *pargs->prow - pargs->offsetrow < pargs->maxrow)
|
||||||
screen_fill_tailing_area(tplmode, *pargs->prow - pargs->offsetrow,
|
screen_fill_tailing_area(tplmode, *pargs->prow - pargs->offsetrow,
|
||||||
*pargs->prow - pargs->offsetrow + 1,
|
*pargs->prow - pargs->offsetrow + 1,
|
||||||
*pargs->pcol, pargs->col_end, pargs->attr);
|
*pargs->pcol, pargs->col_end, pargs->attr);
|
||||||
@ -473,8 +466,8 @@ draw_tabpanel_userdefined(int tplmode, tabpanel_T *pargs)
|
|||||||
screen_puts_len_for_tabpanel(tplmode, p, (int)STRLEN(p), curattr, pargs);
|
screen_puts_len_for_tabpanel(tplmode, p, (int)STRLEN(p), curattr, pargs);
|
||||||
|
|
||||||
// fill the tailing area of current row.
|
// fill the tailing area of current row.
|
||||||
if (0 <= (*pargs->prow - pargs->offsetrow)
|
if (*pargs->prow - pargs->offsetrow >= 0
|
||||||
&& (*pargs->prow - pargs->offsetrow) < pargs->maxrow)
|
&& *pargs->prow - pargs->offsetrow < pargs->maxrow)
|
||||||
screen_fill_tailing_area(tplmode, *pargs->prow - pargs->offsetrow,
|
screen_fill_tailing_area(tplmode, *pargs->prow - pargs->offsetrow,
|
||||||
*pargs->prow - pargs->offsetrow + 1, *pargs->pcol,
|
*pargs->prow - pargs->offsetrow + 1, *pargs->pcol,
|
||||||
pargs->col_end, curattr);
|
pargs->col_end, curattr);
|
||||||
@ -501,7 +494,7 @@ starts_with_percent_and_bang(tabpanel_T *pargs)
|
|||||||
|
|
||||||
// When the format starts with "%!" then evaluate it as an expression and
|
// When the format starts with "%!" then evaluate it as an expression and
|
||||||
// use the result as the actual format string.
|
// use the result as the actual format string.
|
||||||
if (1 < len && usefmt[0] == '%' && usefmt[1] == '!')
|
if (len > 1 && usefmt[0] == '%' && usefmt[1] == '!')
|
||||||
{
|
{
|
||||||
typval_T tv;
|
typval_T tv;
|
||||||
char_u *p = NULL;
|
char_u *p = NULL;
|
||||||
@ -539,24 +532,23 @@ do_by_tplmode(
|
|||||||
int row = 0;
|
int row = 0;
|
||||||
tabpage_T *tp = NULL;
|
tabpage_T *tp = NULL;
|
||||||
typval_T v;
|
typval_T v;
|
||||||
tabpanel_T args;
|
tabpanel_T args;
|
||||||
|
|
||||||
args.maxrow = cmdline_row;
|
args.maxrow = cmdline_row;
|
||||||
args.offsetrow = 0;
|
args.offsetrow = 0;
|
||||||
args.col_start = col_start;
|
args.col_start = col_start;
|
||||||
args.col_end = col_end;
|
args.col_end = col_end;
|
||||||
|
|
||||||
if (TPLMODE_GET_CURTAB_ROW != tplmode)
|
if (tplmode != TPLMODE_GET_CURTAB_ROW && args.maxrow > 0)
|
||||||
if (0 < args.maxrow)
|
while (args.offsetrow + args.maxrow <= *pcurtab_row)
|
||||||
while (args.offsetrow + args.maxrow <= *pcurtab_row)
|
args.offsetrow += args.maxrow;
|
||||||
args.offsetrow += args.maxrow;
|
|
||||||
|
|
||||||
tp = first_tabpage;
|
tp = first_tabpage;
|
||||||
|
|
||||||
for (row = 0; tp != NULL; row++)
|
for (row = 0; tp != NULL; row++)
|
||||||
{
|
{
|
||||||
if ((TPLMODE_GET_CURTAB_ROW != tplmode)
|
if (tplmode != TPLMODE_GET_CURTAB_ROW
|
||||||
&& (args.maxrow <= (row - args.offsetrow)))
|
&& args.maxrow <= row - args.offsetrow)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
col = col_start;
|
col = col_start;
|
||||||
@ -568,7 +560,7 @@ do_by_tplmode(
|
|||||||
if (tp->tp_topframe == topframe)
|
if (tp->tp_topframe == topframe)
|
||||||
{
|
{
|
||||||
args.attr = attr_tpls;
|
args.attr = attr_tpls;
|
||||||
if (TPLMODE_GET_CURTAB_ROW == tplmode)
|
if (tplmode == TPLMODE_GET_CURTAB_ROW)
|
||||||
{
|
{
|
||||||
*pcurtab_row = row;
|
*pcurtab_row = row;
|
||||||
break;
|
break;
|
||||||
@ -588,20 +580,20 @@ do_by_tplmode(
|
|||||||
args.wp = tp->tp_firstwin;
|
args.wp = tp->tp_firstwin;
|
||||||
}
|
}
|
||||||
|
|
||||||
char_u* usefmt = starts_with_percent_and_bang(&args);
|
char_u *usefmt = starts_with_percent_and_bang(&args);
|
||||||
if (usefmt != NULL)
|
if (usefmt != NULL)
|
||||||
{
|
{
|
||||||
char_u buf[IOSIZE];
|
char_u buf[IOSIZE];
|
||||||
char_u *p = usefmt;
|
char_u *p = usefmt;
|
||||||
size_t i = 0;
|
size_t i = 0;
|
||||||
|
|
||||||
while (p[i] != '\0')
|
while (p[i] != NUL)
|
||||||
{
|
{
|
||||||
while ((p[i] == '\n') || (p[i] == '\r'))
|
while (p[i] == '\n' || p[i] == '\r')
|
||||||
{
|
{
|
||||||
// fill the tailing area of current row.
|
// fill the tailing area of current row.
|
||||||
if (0 <= (row - args.offsetrow)
|
if (row - args.offsetrow >= 0
|
||||||
&& (row - args.offsetrow) < args.maxrow)
|
&& row - args.offsetrow < args.maxrow)
|
||||||
screen_fill_tailing_area(tplmode,
|
screen_fill_tailing_area(tplmode,
|
||||||
row - args.offsetrow,
|
row - args.offsetrow,
|
||||||
row - args.offsetrow + 1,
|
row - args.offsetrow + 1,
|
||||||
@ -611,15 +603,14 @@ do_by_tplmode(
|
|||||||
p++;
|
p++;
|
||||||
}
|
}
|
||||||
|
|
||||||
while ((p[i] != '\n') && (p[i] != '\r')
|
while (p[i] != '\n' && p[i] != '\r' && (p[i] != NUL))
|
||||||
&& (p[i] != '\0'))
|
|
||||||
{
|
{
|
||||||
if (i + 1 >= sizeof(buf))
|
if (i + 1 >= sizeof(buf))
|
||||||
break;
|
break;
|
||||||
buf[i] = p[i];
|
buf[i] = p[i];
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
buf[i] = '\0';
|
buf[i] = NUL;
|
||||||
|
|
||||||
args.user_defined = buf;
|
args.user_defined = buf;
|
||||||
args.prow = &row;
|
args.prow = &row;
|
||||||
@ -644,7 +635,7 @@ do_by_tplmode(
|
|||||||
|
|
||||||
tp = tp->tp_next;
|
tp = tp->tp_next;
|
||||||
|
|
||||||
if ((TPLMODE_GET_TABPAGENR == tplmode)
|
if ((tplmode == TPLMODE_GET_TABPAGENR)
|
||||||
&& (mouse_row <= (row - args.offsetrow)))
|
&& (mouse_row <= (row - args.offsetrow)))
|
||||||
{
|
{
|
||||||
*ptabpagenr = v.vval.v_number;
|
*ptabpagenr = v.vval.v_number;
|
||||||
|
|||||||
10
src/testdir/dumps/Test_tabpanel_only_0.dump
Normal file
10
src/testdir/dumps/Test_tabpanel_only_0.dump
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
|[+8#0000001#e0e0e08|N|o| |N|a|m|e|]| @11|[|N|o| |N|a|m|e|]| | +2#0000000#ffffff0|2+2#e000e06&|++2#0000000&| |[|N|o| |N|a|m|e|]| | +1&&@31|X+8#0000001#e0e0e08
|
||||||
|
|2+2#e000e06#ffffff0|++2#0000000&| |[|N|o| |N|a|m|e|]| @7|a+0&&|s|d|f| @25||+1&&|a+0&&|s|d|f| @22
|
||||||
|
| +1&&@19|a+0&&|s|d|f| @25||+1&&|a+0&&|s|d|f| @22
|
||||||
|
| +1&&@19|a+0&&|s|d|f| @25||+1&&|a+0&&|s|d|f| @22
|
||||||
|
| +1&&@19|a+0&&|s|d|f| @25||+1&&|a+0&&|s|d|f| @22
|
||||||
|
| +1&&@19|a+0&&|s|d|f| @25||+1&&|a+0&&|s|d|f| @22
|
||||||
|
| +1&&@19|a+0&&|s|d|f| @25||+1&&|a+0&&|s|d|f| @22
|
||||||
|
| +1&&@19|a+0&&|s|d>f| @25||+1&&|a+0&&|s|d|f| @22
|
||||||
|
| +1&&@19|[+3&&|N|o| |N|a|m|e|]| |[|+|]| @1|1|0|1|,|4| @6|B|o|t| |<+1&&|N|o| |N|a|m|e|]| |[|+|]| |1|0|1|,|4| @4|B|o|t
|
||||||
|
| +0&&@77
|
||||||
10
src/testdir/dumps/Test_tabpanel_only_1.dump
Normal file
10
src/testdir/dumps/Test_tabpanel_only_1.dump
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
|a+0&#ffffff0|s|d|f| @25||+1&&|a+0&&|s|d|f| @42
|
||||||
|
|a|s|d|f| @25||+1&&|a+0&&|s|d|f| @42
|
||||||
|
|a|s|d|f| @25||+1&&|a+0&&|s|d|f| @42
|
||||||
|
|a|s|d|f| @25||+1&&|a+0&&|s|d|f| @42
|
||||||
|
|a|s|d|f| @25||+1&&|a+0&&|s|d|f| @42
|
||||||
|
|a|s|d|f| @25||+1&&|a+0&&|s|d|f| @42
|
||||||
|
|a|s|d|f| @25||+1&&|a+0&&|s|d|f| @42
|
||||||
|
|a|s|d>f| @25||+1&&|a+0&&|s|d|f| @42
|
||||||
|
|[+3&&|N|o| |N|a|m|e|]| |[|+|]| @1|1|0|1|,|4| @6|B|o|t| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @15|1|0|1|,|4| @9|B|o|t
|
||||||
|
|:+0&&|t|a|b|o|n|l|y| @69
|
||||||
@ -4,13 +4,13 @@ source check.vim
|
|||||||
source screendump.vim
|
source screendump.vim
|
||||||
CheckFeature tabpanel
|
CheckFeature tabpanel
|
||||||
|
|
||||||
function! s:reset()
|
function s:reset()
|
||||||
set tabpanel&
|
set tabpanel&
|
||||||
set tabpanelopt&
|
set tabpanelopt&
|
||||||
set showtabpanel&
|
set showtabpanel&
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_mouse()
|
function Test_tabpanel_mouse()
|
||||||
let save_showtabline = &showtabline
|
let save_showtabline = &showtabline
|
||||||
let save_mouse = &mouse
|
let save_mouse = &mouse
|
||||||
set showtabline=0 mouse=a
|
set showtabline=0 mouse=a
|
||||||
@ -67,11 +67,11 @@ function! Test_tabpanel_mouse()
|
|||||||
let &showtabline = save_showtabline
|
let &showtabline = save_showtabline
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_drawing()
|
function Test_tabpanel_drawing()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
function! MyTabPanel()
|
function MyTabPanel()
|
||||||
let n = g:actual_curtabpage
|
let n = g:actual_curtabpage
|
||||||
let hi = n == tabpagenr() ? 'TabLineSel' : 'TabLine'
|
let hi = n == tabpagenr() ? 'TabLineSel' : 'TabLine'
|
||||||
let label = printf("\n%%#%sTabNumber#%d:%%#%s#", hi, n, hi)
|
let label = printf("\n%%#%sTabNumber#%d:%%#%s#", hi, n, hi)
|
||||||
@ -110,7 +110,7 @@ function! Test_tabpanel_drawing()
|
|||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_drawing_with_popupwin()
|
function Test_tabpanel_drawing_with_popupwin()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
@ -147,7 +147,7 @@ function! Test_tabpanel_drawing_with_popupwin()
|
|||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_drawing_fill_tailing()
|
function Test_tabpanel_drawing_fill_tailing()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
@ -171,7 +171,7 @@ function! Test_tabpanel_drawing_fill_tailing()
|
|||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_drawing_pum()
|
function Test_tabpanel_drawing_pum()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
@ -189,13 +189,13 @@ function! Test_tabpanel_drawing_pum()
|
|||||||
call term_sendkeys(buf, "i\<C-x>\<C-v>")
|
call term_sendkeys(buf, "i\<C-x>\<C-v>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_drawing_pum_0', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_drawing_pum_0', {})
|
||||||
|
|
||||||
call term_sendkeys(buf, "\<cr> ab\<C-x>\<C-v>")
|
call term_sendkeys(buf, "\<CR> ab\<C-x>\<C-v>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_drawing_pum_1', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_drawing_pum_1', {})
|
||||||
|
|
||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_scrolling()
|
function Test_tabpanel_scrolling()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
@ -216,7 +216,7 @@ function! Test_tabpanel_scrolling()
|
|||||||
let buf = RunVimInTerminal('-S XTest_tabpanel_scrolling', {'rows': 10, 'cols': 45})
|
let buf = RunVimInTerminal('-S XTest_tabpanel_scrolling', {'rows': 10, 'cols': 45})
|
||||||
let n = 0
|
let n = 0
|
||||||
for c in ['H', 'J', 'K', 'L']
|
for c in ['H', 'J', 'K', 'L']
|
||||||
call term_sendkeys(buf, ":wincmd " .. c .. "\<cr>")
|
call term_sendkeys(buf, ":wincmd " .. c .. "\<CR>")
|
||||||
call term_sendkeys(buf, "\<C-d>\<C-d>")
|
call term_sendkeys(buf, "\<C-d>\<C-d>")
|
||||||
call term_sendkeys(buf, "r@")
|
call term_sendkeys(buf, "r@")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_drawing_scrolling_' .. n, {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_drawing_scrolling_' .. n, {})
|
||||||
@ -226,7 +226,7 @@ function! Test_tabpanel_scrolling()
|
|||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_many_tabpages()
|
function Test_tabpanel_many_tabpages()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
@ -243,14 +243,14 @@ function! Test_tabpanel_many_tabpages()
|
|||||||
call term_sendkeys(buf, "gt")
|
call term_sendkeys(buf, "gt")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_many_tabpages_' .. n, {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_many_tabpages_' .. n, {})
|
||||||
endfor
|
endfor
|
||||||
call term_sendkeys(buf, ":tabnext +10\<cr>")
|
call term_sendkeys(buf, ":tabnext +10\<CR>")
|
||||||
call term_sendkeys(buf, ":tabnext -3\<cr>")
|
call term_sendkeys(buf, ":tabnext -3\<CR>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_many_tabpages_4', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_many_tabpages_4', {})
|
||||||
|
|
||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_visual()
|
function Test_tabpanel_visual()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
@ -265,16 +265,16 @@ function! Test_tabpanel_visual()
|
|||||||
let buf = RunVimInTerminal('-S XTest_tabpanel_visual', {'rows': 10, 'cols': 45})
|
let buf = RunVimInTerminal('-S XTest_tabpanel_visual', {'rows': 10, 'cols': 45})
|
||||||
call term_sendkeys(buf, "v2w")
|
call term_sendkeys(buf, "v2w")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_visual_0', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_visual_0', {})
|
||||||
call term_sendkeys(buf, "\<esc>0jw")
|
call term_sendkeys(buf, "\<Esc>0jw")
|
||||||
call term_sendkeys(buf, "v2wge")
|
call term_sendkeys(buf, "v2wge")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_visual_1', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_visual_1', {})
|
||||||
call term_sendkeys(buf, "y:echo @\"\<cr>")
|
call term_sendkeys(buf, "y:echo @\"\<CR>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_visual_2', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_visual_2', {})
|
||||||
|
|
||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_commandline()
|
function Test_tabpanel_commandline()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
@ -286,18 +286,18 @@ function! Test_tabpanel_commandline()
|
|||||||
call writefile(lines, 'XTest_tabpanel_commandline', 'D')
|
call writefile(lines, 'XTest_tabpanel_commandline', 'D')
|
||||||
|
|
||||||
let buf = RunVimInTerminal('-S XTest_tabpanel_commandline', {'rows': 10, 'cols': 45})
|
let buf = RunVimInTerminal('-S XTest_tabpanel_commandline', {'rows': 10, 'cols': 45})
|
||||||
call term_sendkeys(buf, ":ab\<tab>")
|
call term_sendkeys(buf, ":ab\<Tab>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_commandline_0', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_commandline_0', {})
|
||||||
|
|
||||||
call term_sendkeys(buf, "\<esc>")
|
call term_sendkeys(buf, "\<Esc>")
|
||||||
call term_sendkeys(buf, ":set wildoptions=pum\<cr>")
|
call term_sendkeys(buf, ":set wildoptions=pum\<CR>")
|
||||||
call term_sendkeys(buf, ":ab\<tab>")
|
call term_sendkeys(buf, ":ab\<Tab>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_commandline_1', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_commandline_1', {})
|
||||||
|
|
||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_tabline_and_tabpanel()
|
function Test_tabpanel_tabline_and_tabpanel()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
@ -319,7 +319,7 @@ function! Test_tabpanel_tabline_and_tabpanel()
|
|||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_dont_overflow_into_tabpanel()
|
function Test_tabpanel_dont_overflow_into_tabpanel()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
@ -338,7 +338,7 @@ function! Test_tabpanel_dont_overflow_into_tabpanel()
|
|||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_dont_vert_is_multibytes_left()
|
function Test_tabpanel_dont_vert_is_multibytes_left()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
@ -353,19 +353,19 @@ function! Test_tabpanel_dont_vert_is_multibytes_left()
|
|||||||
let buf = RunVimInTerminal('-S XTest_tabpanel_vert_is_multibyte_lefts', {'rows': 10, 'cols': 45})
|
let buf = RunVimInTerminal('-S XTest_tabpanel_vert_is_multibyte_lefts', {'rows': 10, 'cols': 45})
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_left_0', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_left_0', {})
|
||||||
|
|
||||||
call term_sendkeys(buf, ":set tabpanelopt=columns:1,vert\<cr>")
|
call term_sendkeys(buf, ":set tabpanelopt=columns:1,vert\<CR>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_left_1', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_left_1', {})
|
||||||
|
|
||||||
call term_sendkeys(buf, ":set tabpanelopt=columns:10,vert\<cr>")
|
call term_sendkeys(buf, ":set tabpanelopt=columns:10,vert\<CR>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_left_2', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_left_2', {})
|
||||||
|
|
||||||
call term_sendkeys(buf, ":set tabpanelopt=columns:2,vert\<cr>")
|
call term_sendkeys(buf, ":set tabpanelopt=columns:2,vert\<CR>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_left_3', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_left_3', {})
|
||||||
|
|
||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_dont_vert_is_multibytes_right()
|
function Test_tabpanel_dont_vert_is_multibytes_right()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
@ -380,23 +380,23 @@ function! Test_tabpanel_dont_vert_is_multibytes_right()
|
|||||||
let buf = RunVimInTerminal('-S XTest_tabpanel_vert_is_multibytes_right', {'rows': 10, 'cols': 45})
|
let buf = RunVimInTerminal('-S XTest_tabpanel_vert_is_multibytes_right', {'rows': 10, 'cols': 45})
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_right_0', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_right_0', {})
|
||||||
|
|
||||||
call term_sendkeys(buf, ":set tabpanelopt=align:right,columns:1,vert\<cr>")
|
call term_sendkeys(buf, ":set tabpanelopt=align:right,columns:1,vert\<CR>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_right_1', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_right_1', {})
|
||||||
|
|
||||||
call term_sendkeys(buf, ":set tabpanelopt=align:right,columns:10,vert\<cr>")
|
call term_sendkeys(buf, ":set tabpanelopt=align:right,columns:10,vert\<CR>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_right_2', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_right_2', {})
|
||||||
|
|
||||||
call term_sendkeys(buf, ":set tabpanelopt=align:right,columns:2,vert\<cr>")
|
call term_sendkeys(buf, ":set tabpanelopt=align:right,columns:2,vert\<CR>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_right_3', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_vert_is_multibytes_right_3', {})
|
||||||
|
|
||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_eval_tabpanel_statusline_tabline()
|
function Test_tabpanel_eval_tabpanel_statusline_tabline()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
function! Expr()
|
function Expr()
|
||||||
return "$%=[%f]%=$"
|
return "$%=[%f]%=$"
|
||||||
endfunction
|
endfunction
|
||||||
set laststatus=2
|
set laststatus=2
|
||||||
@ -417,13 +417,13 @@ function! Test_tabpanel_eval_tabpanel_statusline_tabline()
|
|||||||
|
|
||||||
let buf = RunVimInTerminal('-S XTest_tabpanel_eval_tabpanel_statusline_tabline', {'rows': 10, 'cols': 45})
|
let buf = RunVimInTerminal('-S XTest_tabpanel_eval_tabpanel_statusline_tabline', {'rows': 10, 'cols': 45})
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_eval_tabpanel_statusline_tabline_0', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_eval_tabpanel_statusline_tabline_0', {})
|
||||||
call term_sendkeys(buf, ":set tabpanelopt+=align:right\<cr>")
|
call term_sendkeys(buf, ":set tabpanelopt+=align:right\<CR>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_eval_tabpanel_statusline_tabline_1', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_eval_tabpanel_statusline_tabline_1', {})
|
||||||
|
|
||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_noeval_tabpanel_statusline_tabline()
|
function Test_tabpanel_noeval_tabpanel_statusline_tabline()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
@ -445,17 +445,17 @@ function! Test_tabpanel_noeval_tabpanel_statusline_tabline()
|
|||||||
|
|
||||||
let buf = RunVimInTerminal('-S XTest_tabpanel_noeval_tabpanel_statusline_tabline', {'rows': 10, 'cols': 45})
|
let buf = RunVimInTerminal('-S XTest_tabpanel_noeval_tabpanel_statusline_tabline', {'rows': 10, 'cols': 45})
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_noeval_tabpanel_statusline_tabline_0', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_noeval_tabpanel_statusline_tabline_0', {})
|
||||||
call term_sendkeys(buf, ":set tabpanelopt+=align:right\<cr>")
|
call term_sendkeys(buf, ":set tabpanelopt+=align:right\<CR>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_noeval_tabpanel_statusline_tabline_1', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_noeval_tabpanel_statusline_tabline_1', {})
|
||||||
|
|
||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
function! Test_tabpanel_eval_tabpanel_with_linebreaks()
|
function Test_tabpanel_eval_tabpanel_with_linebreaks()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
function! Expr()
|
function Expr()
|
||||||
return "top\n$%=[%f]%=$\nbottom"
|
return "top\n$%=[%f]%=$\nbottom"
|
||||||
endfunction
|
endfunction
|
||||||
set showtabpanel=2
|
set showtabpanel=2
|
||||||
@ -471,10 +471,29 @@ function! Test_tabpanel_eval_tabpanel_with_linebreaks()
|
|||||||
|
|
||||||
let buf = RunVimInTerminal('-S XTest_tabpanel_eval_tabpanel_with_linebreaks', {'rows': 10, 'cols': 45})
|
let buf = RunVimInTerminal('-S XTest_tabpanel_eval_tabpanel_with_linebreaks', {'rows': 10, 'cols': 45})
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_eval_tabpanel_with_linebreaks_0', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_eval_tabpanel_with_linebreaks_0', {})
|
||||||
call term_sendkeys(buf, ":set tabpanelopt+=align:right\<cr>")
|
call term_sendkeys(buf, ":set tabpanelopt+=align:right\<CR>")
|
||||||
call VerifyScreenDump(buf, 'Test_tabpanel_eval_tabpanel_with_linebreaks_1', {})
|
call VerifyScreenDump(buf, 'Test_tabpanel_eval_tabpanel_with_linebreaks_1', {})
|
||||||
|
|
||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
function Test_tabpanel_tabonly()
|
||||||
|
CheckScreendump
|
||||||
|
|
||||||
|
let lines =<< trim END
|
||||||
|
tabnew
|
||||||
|
set showtabpanel=1
|
||||||
|
norm 100oasdf
|
||||||
|
vsplit
|
||||||
|
END
|
||||||
|
call writefile(lines, 'XTest_tabpanel_tabonly', 'D')
|
||||||
|
|
||||||
|
let buf = RunVimInTerminal('-S XTest_tabpanel_tabonly', {'rows': 10, 'cols': 80})
|
||||||
|
call VerifyScreenDump(buf, 'Test_tabpanel_only_0', {})
|
||||||
|
call term_sendkeys(buf, ":tabonly\<CR>")
|
||||||
|
call VerifyScreenDump(buf, 'Test_tabpanel_only_1', {})
|
||||||
|
|
||||||
|
call StopVimInTerminal(buf)
|
||||||
|
endfunc
|
||||||
|
|
||||||
" vim: shiftwidth=2 sts=2 expandtab
|
" vim: shiftwidth=2 sts=2 expandtab
|
||||||
|
|||||||
@ -709,6 +709,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1394,
|
||||||
/**/
|
/**/
|
||||||
1393,
|
1393,
|
||||||
/**/
|
/**/
|
||||||
|
|||||||
@ -2086,7 +2086,7 @@ win_equal(
|
|||||||
dir = *p_ead;
|
dir = *p_ead;
|
||||||
win_equal_rec(next_curwin == NULL ? curwin : next_curwin, current,
|
win_equal_rec(next_curwin == NULL ? curwin : next_curwin, current,
|
||||||
topframe, dir, 0, tabline_height(),
|
topframe, dir, 0, tabline_height(),
|
||||||
(int)COLUMNS_WITHOUT_TPL(), topframe->fr_height);
|
(int)COLUMNS_WITHOUT_TPL(), topframe->fr_height);
|
||||||
if (!is_aucmd_win(next_curwin))
|
if (!is_aucmd_win(next_curwin))
|
||||||
win_fix_scroll(TRUE);
|
win_fix_scroll(TRUE);
|
||||||
}
|
}
|
||||||
@ -3463,6 +3463,10 @@ win_close_othertab(win_T *win, int free_buf, tabpage_T *tp)
|
|||||||
redraw_tabline = TRUE;
|
redraw_tabline = TRUE;
|
||||||
if (h != tabline_height())
|
if (h != tabline_height())
|
||||||
shell_new_rows();
|
shell_new_rows();
|
||||||
|
#if defined(FEAT_TABPANEL)
|
||||||
|
redraw_tabpanel = TRUE;
|
||||||
|
#endif
|
||||||
|
shell_new_columns();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Free the memory used for the window.
|
// Free the memory used for the window.
|
||||||
|
|||||||
Reference in New Issue
Block a user