From: Chris Allegretta Date: Sun, 29 Apr 2001 02:26:17 +0000 (+0000) Subject: page_up() - Rewritten with a loop to make screen updates work when mark is set ... X-Git-Tag: v1.1.0~74 X-Git-Url: https://git.wh0rd.org/?a=commitdiff_plain;h=6cb4e885f2a2f563acf66feb4fbe7fcdf80091e8;p=nano.git page_up() - Rewritten with a loop to make screen updates work when mark is set (fixes bug #59). git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@618 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- diff --git a/BUGS b/BUGS index 4f3acded..1749f619 100644 --- a/BUGS +++ b/BUGS @@ -107,6 +107,8 @@ Matthias Andree) (58) [FIXED]. - Can modify the current file in view mode with ^W^R (discovered by Rocco Corsi) (58) [FIXED]. +- When page up is used after two page down's, the screen doesn't update + properly (discovered by David Lawrence Ramsey) (59) [FIXED]. ** Open BUGS ** diff --git a/ChangeLog b/ChangeLog index ca88a047..65409cf4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -29,6 +29,10 @@ Cvs code - - Added the "Goto Directory" code (Rocco) - global.c: - Updated some of the lists for the "Goto Directory" code (Rocco) +- move.c: + page_up() + - Rewritten with a loop to make screen updates work when + mark is set (fixes bug #59). - nano.c: do_alt_speller() - Reposition cursor on same line as before ^T was called (Rocco) diff --git a/move.c b/move.c index f7a9efa8..071ea8d6 100644 --- a/move.c +++ b/move.c @@ -146,7 +146,8 @@ void page_up_center(void) int page_up(void) { - filestruct *fileptr = edittop; + int i; + wrap_reset(); current_x = 0; placewewant = 0; @@ -155,13 +156,11 @@ int page_up(void) return 0; current_y = 0; - if (fileptr->next != NULL) - fileptr = fileptr->next; - if (fileptr->next != NULL) - fileptr = fileptr->next; - current = edittop; - edit_update(fileptr, BOTTOM); + for (i = 0; i <= editwinrows - 3 && current->prev != NULL; i++) + current = current->prev; + + edit_update(current, TOP); update_cursor(); UNSET(KEEP_CUTBUFFER);