mirror of
https://github.com/vim/vim.git
synced 2025-09-28 04:24:06 -04:00
patch 8.1.1456: WinBar not redrawn after scrolling one line
Problem: WinBar not redrawn after scrolling one line. Solution: Exclude the winbar height when deciding what to redraw. (closes #4473)
This commit is contained in:
@@ -645,7 +645,7 @@ update_screen(int type_arg)
|
|||||||
type = CLEAR;
|
type = CLEAR;
|
||||||
FOR_ALL_WINDOWS(wp)
|
FOR_ALL_WINDOWS(wp)
|
||||||
{
|
{
|
||||||
if (W_WINROW(wp) < msg_scrolled)
|
if (wp->w_winrow < msg_scrolled)
|
||||||
{
|
{
|
||||||
if (W_WINROW(wp) + wp->w_height > msg_scrolled
|
if (W_WINROW(wp) + wp->w_height > msg_scrolled
|
||||||
&& wp->w_redr_type < REDRAW_TOP
|
&& wp->w_redr_type < REDRAW_TOP
|
||||||
|
@@ -110,3 +110,15 @@ func Test_click_in_other_winbar()
|
|||||||
|
|
||||||
bwipe!
|
bwipe!
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func Test_redraw_after_scroll()
|
||||||
|
new
|
||||||
|
amenu 1.10 WinBar.Next :let g:did_next = 11<CR>
|
||||||
|
redraw
|
||||||
|
call assert_equal(" Next", Screenline(1))
|
||||||
|
echo "some\nmore"
|
||||||
|
redraw
|
||||||
|
call assert_equal(" Next", Screenline(1))
|
||||||
|
bwipe!
|
||||||
|
endfunc
|
||||||
|
|
||||||
|
@@ -767,6 +767,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 */
|
||||||
|
/**/
|
||||||
|
1456,
|
||||||
/**/
|
/**/
|
||||||
1455,
|
1455,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user