diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2003-07-26 10:09:38 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2003-07-26 10:09:38 +0200 |
commit | 1ea8f449534f878f705dbccc845fccb5bc16661c (patch) | |
tree | c347c80fcac98eacccf3139a688916366e07c757 /menu.c | |
parent | 734941a28553d8a869fa145af626192091271e63 (diff) | |
download | vdr-1ea8f449534f878f705dbccc845fccb5bc16661c.tar.gz vdr-1ea8f449534f878f705dbccc845fccb5bc16661c.tar.bz2 |
Fixed handling the color buttons in the "Edit channel" menu
Diffstat (limited to 'menu.c')
-rw-r--r-- | menu.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -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; } } |