forked from aniani/vim
updated for version 7.4.281
Problem: When a session file has more than one tabpage and 'showtabline' is one the positions may be slightly off. Solution: Set 'showtabline' to two while positioning windows.
This commit is contained in:
@@ -10290,6 +10290,7 @@ makeopens(fd, dirnow)
|
|||||||
char_u *sname;
|
char_u *sname;
|
||||||
win_T *edited_win = NULL;
|
win_T *edited_win = NULL;
|
||||||
int tabnr;
|
int tabnr;
|
||||||
|
int restore_stal = FALSE;
|
||||||
win_T *tab_firstwin;
|
win_T *tab_firstwin;
|
||||||
frame_T *tab_topframe;
|
frame_T *tab_topframe;
|
||||||
int cur_arg_idx = 0;
|
int cur_arg_idx = 0;
|
||||||
@@ -10398,6 +10399,19 @@ makeopens(fd, dirnow)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* When there are two or more tabpages and 'showtabline' is 1 the tabline
|
||||||
|
* will be displayed when creating the next tab. That resizes the windows
|
||||||
|
* in the first tab, which may cause problems. Set 'showtabline' to 2
|
||||||
|
* temporarily to avoid that.
|
||||||
|
*/
|
||||||
|
if (p_stal == 1 && first_tabpage->tp_next != NULL)
|
||||||
|
{
|
||||||
|
if (put_line(fd, "set stal=2") == FAIL)
|
||||||
|
return FAIL;
|
||||||
|
restore_stal = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* May repeat putting Windows for each tab, when "tabpages" is in
|
* May repeat putting Windows for each tab, when "tabpages" is in
|
||||||
* 'sessionoptions'.
|
* 'sessionoptions'.
|
||||||
@@ -10548,6 +10562,8 @@ makeopens(fd, dirnow)
|
|||||||
|| put_eol(fd) == FAIL)
|
|| put_eol(fd) == FAIL)
|
||||||
return FAIL;
|
return FAIL;
|
||||||
}
|
}
|
||||||
|
if (restore_stal && put_line(fd, "set stal=1") == FAIL)
|
||||||
|
return FAIL;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Wipe out an empty unnamed buffer we started in.
|
* Wipe out an empty unnamed buffer we started in.
|
||||||
|
@@ -734,6 +734,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 */
|
||||||
|
/**/
|
||||||
|
281,
|
||||||
/**/
|
/**/
|
||||||
280,
|
280,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user