mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
If the Channel+/- keys are pressed while in the Schedules menu, the menu is now switched to the EPG of the new current channel
This commit is contained in:
parent
0f1f277819
commit
354910faab
2
HISTORY
2
HISTORY
@ -9046,3 +9046,5 @@ Video Disk Recorder Revision History
|
||||
- Fixed setting the local machine's SVDRP host name (was overwritten if setup.conf
|
||||
contained an empty string). The SVDRP host name is now only written to setup.conf
|
||||
if it differs from the system's host name.
|
||||
- If the Channel+/- keys are pressed while in the Schedules menu, the menu is now
|
||||
switched to the EPG of the new current channel.
|
||||
|
29
menu.c
29
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 4.28 2017/05/20 13:00:21 kls Exp $
|
||||
* $Id: menu.c 4.29 2017/05/21 13:18:26 kls Exp $
|
||||
*/
|
||||
|
||||
#include "menu.h"
|
||||
@ -1691,7 +1691,7 @@ eOSState cMenuWhatsOn::ProcessKey(eKeys Key)
|
||||
eOSState state = cOsdMenu::ProcessKey(Key);
|
||||
|
||||
if (state == osUnknown) {
|
||||
switch (Key) {
|
||||
switch (int(Key)) {
|
||||
case kRecord:
|
||||
case kRed: return Record();
|
||||
case kYellow: state = osBack;
|
||||
@ -1707,6 +1707,20 @@ eOSState cMenuWhatsOn::ProcessKey(eKeys Key)
|
||||
case kBlue: if (canSwitch)
|
||||
return Switch();
|
||||
break;
|
||||
case kChanUp|k_Repeat:
|
||||
case kChanUp:
|
||||
case kChanDn|k_Repeat:
|
||||
case kChanDn: if (!HasSubMenu()) {
|
||||
for (cOsdItem *item = First(); item; item = Next(item)) {
|
||||
if (((cMenuScheduleItem *)item)->channel->Number() == cDevice::CurrentChannel()) {
|
||||
SetCurrent(item);
|
||||
Display();
|
||||
SetHelpKeys();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case kInfo:
|
||||
case kOk: if (Count()) {
|
||||
LOCK_TIMERS_READ;
|
||||
@ -1993,7 +2007,7 @@ eOSState cMenuSchedule::ProcessKey(eKeys Key)
|
||||
eOSState state = cOsdMenu::ProcessKey(Key);
|
||||
|
||||
if (state == osUnknown) {
|
||||
switch (Key) {
|
||||
switch (int(Key)) {
|
||||
case k0: return Number();
|
||||
case kRecord:
|
||||
case kRed: return Record();
|
||||
@ -2023,6 +2037,15 @@ eOSState cMenuSchedule::ProcessKey(eKeys Key)
|
||||
case kBlue: if (canSwitch)
|
||||
return Switch();
|
||||
break;
|
||||
case kChanUp|k_Repeat:
|
||||
case kChanUp:
|
||||
case kChanDn|k_Repeat:
|
||||
case kChanDn: if (!HasSubMenu()) {
|
||||
LOCK_CHANNELS_READ;
|
||||
if (const cChannel *Channel = Channels->GetByNumber(cDevice::CurrentChannel()))
|
||||
Set(Channel, true);
|
||||
}
|
||||
break;
|
||||
case kInfo:
|
||||
case kOk: if (Count()) {
|
||||
LOCK_TIMERS_READ;
|
||||
|
3
vdr.c
3
vdr.c
@ -22,7 +22,7 @@
|
||||
*
|
||||
* The project's page is at http://www.tvdr.de
|
||||
*
|
||||
* $Id: vdr.c 4.13 2017/05/01 13:00:51 kls Exp $
|
||||
* $Id: vdr.c 4.14 2017/05/21 12:31:37 kls Exp $
|
||||
*/
|
||||
|
||||
#include <getopt.h>
|
||||
@ -1282,7 +1282,6 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
else
|
||||
cDevice::SwitchChannel(NORMALKEY(key) == kChanUp ? 1 : -1);
|
||||
key = kNone; // nobody else needs to see these keys
|
||||
break;
|
||||
// Volume control:
|
||||
case kVolUp|k_Repeat:
|
||||
|
Loading…
Reference in New Issue
Block a user