From 1ea8f449534f878f705dbccc845fccb5bc16661c Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sat, 26 Jul 2003 10:09:38 +0200 Subject: [PATCH] Fixed handling the color buttons in the "Edit channel" menu --- CONTRIBUTORS | 1 + HISTORY | 4 +++- menu.c | 10 +++++++--- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index c2f85ec7..36e375ae 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -731,3 +731,4 @@ Thomas Keil for suggesting to change the behaviour of the '0' key in normal viewing mode so that a channel only qualifies as "previous" if it has been selected for at least 3 seconds + for reporting a bug in handling the color buttons in the "Edit channel" menu diff --git a/HISTORY b/HISTORY index e6ea95ad..504f00c5 100644 --- a/HISTORY +++ b/HISTORY @@ -2254,7 +2254,7 @@ Video Disk Recorder Revision History - Some corrections to the Finnish OSD texts (thanks to Niko Tarnanen and Rolf Ahrenberg). -2003-07-13: Version 1.2.2 +2003-07-26: Version 1.2.2 - Fixed a bug in channel switching after Left/Right has been pressed (thanks to Michael Walle for reporting this one). @@ -2269,3 +2269,5 @@ Video Disk Recorder Revision History - Now clearing the channel info display when entering numeric keys to switch channels (suggested by Guy Roussin). - Added missing I18N entry for "Ppid" (thanks to Rolf Ahrenberg). +- Fixed handling the color buttons in the "Edit channel" menu (thanks to Thomas + Keil for reporting this one). diff --git a/menu.c b/menu.c index 53a9b98f..68653917 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.260 2003/06/19 10:09:29 kls Exp $ + * $Id: menu.c 1.261 2003/07/26 10:05:20 kls Exp $ */ #include "menu.h" @@ -713,6 +713,8 @@ void cMenuChannels::Propagate(void) eOSState cMenuChannels::Switch(void) { + if (HasSubMenu()) + return osContinue; cChannel *ch = GetChannel(Current()); if (ch) cDevice::PrimaryDevice()->SwitchChannel(ch, true); @@ -738,7 +740,7 @@ eOSState cMenuChannels::New(void) eOSState cMenuChannels::Delete(void) { - if (Count() > 0) { + if (!HasSubMenu() && Count() > 0) { int Index = Current(); cChannel *channel = GetChannel(Current()); int DeletedChannel = channel->Number(); @@ -793,7 +795,9 @@ eOSState cMenuChannels::ProcessKey(eKeys Key) case kRed: return Edit(); case kGreen: return New(); case kYellow: return Delete(); - case kBlue: Mark(); break; + case kBlue: if (!HasSubMenu()) + Mark(); + break; default: break; } }