summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTORS4
-rw-r--r--HISTORY4
-rw-r--r--osd.c10
3 files changed, 16 insertions, 2 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 70dd219e..7f0b54ef 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -233,3 +233,7 @@ Mirko Günther <mi.guenther@ib-helms.de>
Achim Lange <Achim_Lange@t-online.de>
for replacing 'killproc' with 'killall' in 'runvdr' to make it work on Debian
+
+Bernd Zierath <b.zierath@ebv.com>
+ for helping to debug scrolling the "Channels" menu in case the cursor ends up on
+ a group separator
diff --git a/HISTORY b/HISTORY
index aa07988d..d47ff346 100644
--- a/HISTORY
+++ b/HISTORY
@@ -1120,7 +1120,7 @@ Video Disk Recorder Revision History
exits. The 'runvdr' script can be used for this purpose.
- Refined texts of the "Setup" menu.
-2002-03-22: Version 1.0.0pre5
+2002-03-24: Version 1.0.0pre5
- Fixed restoring CICAM setup values for a fourth DVB card.
- Completed internationalization of OSD texts (thanks to Hannu Savolainen,
@@ -1135,3 +1135,5 @@ Video Disk Recorder Revision History
is now immediately shown in the status line (followed by "...") to give the
user some feedback that the command is being executed, which is especially
important if this takes some time.
+- Fixed scrolling the "Channels" menu in case the cursor ends up on a group
+ delimiter (thanks to Bernd Zierath for helping to debug this one).
diff --git a/osd.c b/osd.c
index e404a6f8..0b445780 100644
--- a/osd.c
+++ b/osd.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: osd.c 1.21 2002/03/10 16:18:06 kls Exp $
+ * $Id: osd.c 1.22 2002/03/24 11:23:23 kls Exp $
*/
#include "osd.h"
@@ -288,6 +288,10 @@ void cOsdMenu::PageUp(void)
first -= MAXOSDITEMS;
if (first < 0)
first = current = 0;
+ if (SpecialItem(current)) {
+ current -= (current > 0) ? 1 : -1;
+ first = min(first, current - 1);
+ }
Display();
DisplayCurrent(true);
}
@@ -302,6 +306,10 @@ void cOsdMenu::PageDown(void)
current = Count() - 1;
first = Count() - MAXOSDITEMS;
}
+ if (SpecialItem(current)) {
+ current += (current < Count() - 1) ? 1 : -1;
+ first = max(first, current - MAXOSDITEMS);
+ }
Display();
DisplayCurrent(true);
}