A menu is no longer automatically closed when a replay ends

This commit is contained in:
Klaus Schmidinger 2005-11-04 13:52:31 +01:00
parent 23ee5bb4da
commit 159c7e283d
3 changed files with 11 additions and 2 deletions

View File

@ -1499,6 +1499,7 @@ Harald Milz <hm@seneca.muc.de>
Marko Mäkelä <marko.makela@hut.fi>
for making repeat keys be ignored when waiting for a keypress to cancel an operation
for reporting that a menu was automatically closed when a replay ends
Patrick Rother <krd-vdr@gulu.net>
for reporting a bug in defining timers that only differ in the day of week

View File

@ -3917,3 +3917,5 @@ Video Disk Recorder Revision History
- Fixed a NULL pointer access with the cUnbufferedFile when a replay session runs
all the way until the end of the recording (thanks to Joachim Wilke).
- A menu is no longer automatically closed when a replay ends (reported by
Marko Mäkelä).

10
vdr.c
View File

@ -22,7 +22,7 @@
*
* The project's page is at http://www.cadsoft.de/vdr
*
* $Id: vdr.c 1.218 2005/10/09 10:01:45 kls Exp $
* $Id: vdr.c 1.219 2005/11/04 13:48:39 kls Exp $
*/
#include <getopt.h>
@ -813,8 +813,14 @@ int main(int argc, char *argv[])
if (Interact) {
eOSState state = Interact->ProcessKey(key);
if (state == osUnknown && Interact != cControl::Control()) {
if (ISMODELESSKEY(key) && cControl::Control())
if (ISMODELESSKEY(key) && cControl::Control()) {
state = cControl::Control()->ProcessKey(key);
if (state == osEnd) {
// let's not close a menu when replay ends:
cControl::Shutdown();
continue;
}
}
else if (time(NULL) - LastActivity > MENUTIMEOUT)
state = osEnd;
}