diff options
-rw-r--r-- | CONTRIBUTORS | 1 | ||||
-rw-r--r-- | HISTORY | 5 | ||||
-rw-r--r-- | osdbase.c | 6 |
3 files changed, 11 insertions, 1 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 92c68011..0bb913f0 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -1241,6 +1241,7 @@ Udo Richter <udo_richter@gmx.de> for fixing handling lifetime when deciding whether to delete a recording for reporting a problem in handling page up/down in menu lists in case there are several non selectable items in a row + for fixing handling 'page down' after it was broken in version 1.3.26 Sven Kreiensen <svenk@kammer.uni-hannover.de> for his help in keeping 'channels.conf.terr' up to date @@ -3612,3 +3612,8 @@ Video Disk Recorder Revision History - Added cOsdMenu::SetCols() to allow adjusting the menu columns. - Modified cEITScanner::Process() so that it works on systems with only budget cards or a mix of DVB-S, DVB-C or DVB-T cards. + +2005-06-17: Version 1.3.27 + +- Fixed handling 'page down', which was broken in version 1.3.26 (thanks to Udo + Richter). @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: osdbase.c 1.17 2005/06/12 10:44:22 kls Exp $ + * $Id: osdbase.c 1.18 2005/06/17 14:22:34 kls Exp $ */ #include "osdbase.h" @@ -350,6 +350,10 @@ void cOsdMenu::PageDown(void) current += displayMenuItems; first += displayMenuItems; int last = Count() - 1; + if (current > last) + current = last; + if (first + displayMenuItems > last) + first = max(0, last - displayMenuItems + 1); int tmpCurrent = current; while (!SelectableItem(tmpCurrent) && ++tmpCurrent <= last) ; |