]> git.wh0rd.org Git - nano.git/commitdiff
edit_redraw() should update when we're not on the first page and/or when
authorDavid Lawrence Ramsey <pooka109@gmail.com>
Tue, 1 Jun 2004 18:32:36 +0000 (18:32 +0000)
committerDavid Lawrence Ramsey <pooka109@gmail.com>
Tue, 1 Jun 2004 18:32:36 +0000 (18:32 +0000)
we're not on the same page as before, not just in the former case

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@1796 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

ChangeLog
src/winio.c

index 289bc6c14caa22de77201597bab92b0605052afa..fc5976c3dbb52173c70f512d55a8a00dbd7ff887 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -90,7 +90,8 @@ CVS code -
          do_right_void(), need_horizontal_update(),
          need_vertical_update(), edit_scroll(), and edit_redraw().  All
          of these functions but the first two require the previous
-         versions of current and/or placewewant as parameters.  Also
+         versions of current and/or placewewant as parameters, so that
+         they can redraw properly when the location has changed.  Also
          rename the int refresh in do_delete() and do_backspace() to
          do_refresh so as not to conflict with refresh(). (DLR)
        - Add some comments better explaining what is disabled in
index a82facb2e5aa810925d4c54733e9fcdb3fdaa89c..6e0c3a234fb6efccde85f32ec642cb847eb11877 100644 (file)
@@ -2610,7 +2610,8 @@ void edit_scroll(updown direction, int nlines)
  * updated. */
 void edit_redraw(const filestruct *old_current, int old_pww)
 {
-    int do_refresh = need_vertical_update(old_pww);
+    int do_refresh = need_vertical_update(0) ||
+       need_vertical_update(old_pww);
     const filestruct *foo;
 
     /* If either old_current or current is offscreen, refresh the screen
@@ -2623,9 +2624,9 @@ void edit_redraw(const filestruct *old_current, int old_pww)
        return;
     }
 
-    /* Update old_current and current if we're not on the first page.
-     * If the mark is on, update all the lines between old_current and
-     * current too. */
+    /* Update old_current and current if we're not on the first page
+     * and/or we're not on the same page as before.  If the mark is on,
+     * update all the lines between old_current and current too. */
     foo = old_current;
     while (foo != current) {
        if (do_refresh)