diff --git a/HISTORY b/HISTORY index ce02264c..f46b1a5b 100644 --- a/HISTORY +++ b/HISTORY @@ -218,3 +218,5 @@ Video Disk Recorder Revision History - Added the description of the timers.conf file to the FORMATS file. - Displaying as much as possible of the current/next info (dropping characters that would display only partially). +- In normal viewing mode the '0' key now toggles between the current and the + previous channel. diff --git a/MANUAL b/MANUAL index 44c875f8..24ee3ff5 100644 --- a/MANUAL +++ b/MANUAL @@ -66,9 +66,12 @@ Video Disk Recorder User's Manual if no key is pressed for about half a second, the digits collected so far will define the channel number. + Pressing the '0' key toggles between the current and the previous channel. + After switching to a different channel the channel number and name, as well - as the current time are displayed at the top of the screen. This line - automatically goes away after about two seconds, or if any key is pressed. + as the current time are displayed at the top of the screen. If available, the + 'current/next' information will be displayed below this line. This display + automatically goes away after about five seconds, or if any key is pressed. To bring up the channel display without switching channels you can press the "Ok" button. diff --git a/menu.c b/menu.c index 00b94b5a..1f5fd888 100644 --- a/menu.c +++ b/menu.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: menu.c 1.29 2000/10/03 12:38:03 kls Exp $ + * $Id: menu.c 1.30 2000/10/03 14:06:44 kls Exp $ */ #include "menu.h" @@ -1186,7 +1186,7 @@ cDirectChannelSelect::~cDirectChannelSelect() eOSState cDirectChannelSelect::ProcessKey(eKeys Key) { switch (Key) { - case k0: case k1: case k2: case k3: case k4: case k5: case k6: case k7: case k8: case k9: + case k0 ... k9: if (number >= 0) { number = number * 10 + Key - k0; cChannel *channel = Channels.GetByNumber(number); diff --git a/vdr.c b/vdr.c index 91643c2f..042b03ce 100644 --- a/vdr.c +++ b/vdr.c @@ -22,7 +22,7 @@ * * The project's page is at http://www.cadsoft.de/people/kls/vdr * - * $Id: vdr.c 1.35 2000/09/20 16:45:01 kls Exp $ + * $Id: vdr.c 1.36 2000/10/03 13:52:26 kls Exp $ */ #include @@ -193,12 +193,14 @@ int main(int argc, char *argv[]) cOsdBase *Menu = NULL; cReplayControl *ReplayControl = NULL; int LastChannel = -1; + int PreviousChannel = CurrentChannel; while (!Interrupted) { // Channel display: if (CurrentChannel != LastChannel) { if (!Menu) Channels.ShowChannel(CurrentChannel, LastChannel > 0); + PreviousChannel = LastChannel; LastChannel = CurrentChannel; } // Timers and Recordings: @@ -244,8 +246,13 @@ int main(int argc, char *argv[]) } else { switch (key) { + // Toggle channels: + case k0: + if (PreviousChannel != CurrentChannel) + Channels.SwitchTo(PreviousChannel); + break; // Direct Channel Select: - case k0: case k1: case k2: case k3: case k4: case k5: case k6: case k7: case k8: case k9: + case k1 ... k9: if (!Interface.Recording()) Menu = new cDirectChannelSelect(key); break;