From e5e0315d3490511ccaa6c7e0d456cffbd7d773fb Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Mon, 4 Dec 2017 15:33:41 +0100 Subject: [PATCH] The CAM menu is now automatically closed when the current channel is switched --- CONTRIBUTORS | 1 + HISTORY | 2 ++ menu.c | 6 +++++- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 8fa7591d..4cf9e1ed 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -3425,6 +3425,7 @@ Dietmar Spingler for suggesting to optionally list the channels with channel ids in the SVDRP command LSTC for suggesting to include the channel ID in log messages about switching channels for reporting a problem with the SVDRP command CHAN while the channel display is open + for suggesting to automatically close the CAM menu when the current channel is switched Stefan Schallenberg for adding the functions IndexOf(), InsertUnique(), AppendUnique() and RemoveElement() diff --git a/HISTORY b/HISTORY index fb2aa087..1f7bd4f9 100644 --- a/HISTORY +++ b/HISTORY @@ -9217,3 +9217,5 @@ Video Disk Recorder Revision History different volumes (reported by Matthias Senzel). - Fixed positioning to the current item when changing the sort mode in the Recordings menu, in case there is a LastReplayed recording. +- The CAM menu is now automatically closed when the current channel is switched + (suggested by Dietmar Spingler). diff --git a/menu.c b/menu.c index af904102..c17a4f10 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 4.47 2017/12/04 14:50:59 kls Exp $ + * $Id: menu.c 4.48 2017/12/04 15:25:57 kls Exp $ */ #include "menu.h" @@ -3798,6 +3798,7 @@ bool cMenuSetupCAMItem::Changed(void) class cMenuSetupCAM : public cMenuSetupBase { private: + int currentChannel; const char *activationHelp; eOSState Menu(void); eOSState Reset(void); @@ -3810,6 +3811,7 @@ public: cMenuSetupCAM::cMenuSetupCAM(void) { + currentChannel = cDevice::CurrentChannel(); activationHelp = NULL; SetMenuCategory(mcSetupCam); SetSection(tr("CAM")); @@ -3935,6 +3937,8 @@ eOSState cMenuSetupCAM::ProcessKey(eKeys Key) } SetHelpKeys(); } + if (currentChannel != cDevice::CurrentChannel()) + state = osEnd; return state; }