changeset 7311:743c258ca3ab v7.4.961

commit https://github.com/vim/vim/commit/9dc2ce398bb3456cc8f590ef0260459798b34d2a Author: Bram Moolenaar <Bram@vim.org> Date: Sat Dec 5 19:47:04 2015 +0100 patch 7.4.961 Problem: Test107 fails in some circunstances. Solution: When using "zt", "zb" and "z=" recompute the fraction.
author Christian Brabandt <cb@256bit.org>
date Sat, 05 Dec 2015 20:00:04 +0100
parents 7ebcc26c49fe
children ae9e4a4e5fd4
files src/normal.c src/proto/window.pro src/version.c src/window.c
diffstat 4 files changed, 7 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/normal.c
+++ b/src/normal.c
@@ -4880,6 +4880,7 @@ dozet:
 
     case 't':	scroll_cursor_top(0, TRUE);
 		redraw_later(VALID);
+		set_fraction(curwin);
 		break;
 
 		/* "z." and "zz": put cursor in middle of screen */
@@ -4888,6 +4889,7 @@ dozet:
 
     case 'z':	scroll_cursor_halfway(TRUE);
 		redraw_later(VALID);
+		set_fraction(curwin);
 		break;
 
 		/* "z^", "z-" and "zb": put cursor at bottom of screen */
@@ -4910,6 +4912,7 @@ dozet:
 
     case 'b':	scroll_cursor_bot(0, TRUE);
 		redraw_later(VALID);
+		set_fraction(curwin);
 		break;
 
 		/* "zH" - scroll screen right half-page */
--- a/src/proto/window.pro
+++ b/src/proto/window.pro
@@ -53,6 +53,7 @@ void win_setwidth_win __ARGS((int width,
 void win_setminheight __ARGS((void));
 void win_drag_status_line __ARGS((win_T *dragwin, int offset));
 void win_drag_vsep_line __ARGS((win_T *dragwin, int offset));
+void set_fraction __ARGS((win_T *wp));
 void win_new_height __ARGS((win_T *wp, int height));
 void win_new_width __ARGS((win_T *wp, int width));
 void win_comp_scroll __ARGS((win_T *wp));
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    961,
+/**/
     960,
 /**/
     959,
--- a/src/window.c
+++ b/src/window.c
@@ -75,7 +75,6 @@ static int frame_check_width __ARGS((fra
 #endif /* FEAT_WINDOWS */
 
 static win_T *win_alloc __ARGS((win_T *after, int hidden));
-static void set_fraction __ARGS((win_T *wp));
 
 #define URL_SLASH	1		/* path_is_url() has found "://" */
 #define URL_BACKSLASH	2		/* path_is_url() has found ":\\" */
@@ -5828,7 +5827,7 @@ win_drag_vsep_line(dragwin, offset)
 /*
  * Set wp->w_fraction for the current w_wrow and w_height.
  */
-    static void
+    void
 set_fraction(wp)
     win_T	*wp;
 {