From: Chris Allegretta Date: Mon, 4 Jan 2010 19:00:55 +0000 (+0000) Subject: 2010-01-04 Chris Allegretta X-Git-Tag: v2.2.2~7 X-Git-Url: https://git.wh0rd.org/?a=commitdiff_plain;h=374216fe229f05757b39c478688afcacc4365cc6;p=nano.git 2010-01-04 Chris Allegretta * winio.c: edit_update, edit_redraw - Fix search not scrolling to the middle of the screen (reported by alpha@qzx.com) and places where we rely on maxrows but should not. git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@4471 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- diff --git a/ChangeLog b/ChangeLog index 80f4bbe3..281fb9d2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2010-01-04 Chris Allegretta + * winio.c: edit_update, edit_redraw - Fix search not scrolling to the middle of the screen + (reported by alpha@qzx.com) and places where we rely on maxrows but should not. + 2009-12-26 Jordi Mallach * doc/man/nano.1: Avoid a groff warning by prepending a zero-width space to a line starting with '. diff --git a/src/winio.c b/src/winio.c index 6b5e6e16..eb18ed8b 100644 --- a/src/winio.c +++ b/src/winio.c @@ -2935,7 +2935,7 @@ bool need_vertical_update(size_t pww_save) } /* When edittop changes, try and figure out how many lines - * we really have to work with (i.e. set maxrows) + * we really have to work with (i.e. set maxrows) */ void compute_maxrows(void) { @@ -3160,7 +3160,7 @@ void edit_redraw(filestruct *old_current, size_t pww_save) /* Put edittop in range of current, get the difference in lines * between the original edittop and the current edittop, and * then restore the original edittop. */ - edit_update(NONE); + edit_update(CENTER); nlines = openfile->edittop->lineno - old_edittop->lineno; @@ -3239,7 +3239,7 @@ void edit_refresh(void) /* Put the top line of the edit window in range of the current * line. */ - edit_update(NONE); + edit_update(CENTER); } foo = openfile->edittop; @@ -3279,13 +3279,13 @@ void edit_update(update_type location) * screen as before, or at the top or bottom of the screen if * edittop is beyond either. */ if (location == CENTER) - goal = maxrows / 2; + goal = editwinrows / 2; else { goal = openfile->current_y; /* Limit goal to (editwinrows - 1) lines maximum. */ - if (goal > maxrows - 1) - goal = maxrows - 1; + if (goal > editwinrows - 1) + goal = editwinrows - 1; } for (; goal > 0 && foo->prev != NULL; goal--) {