summaryrefslogtreecommitdiff
path: root/vdr.c
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2003-06-19 10:06:07 +0200
committerKlaus Schmidinger <vdr@tvdr.de>2003-06-19 10:06:07 +0200
commit1922b1401048262b1f6a931ebdeebfc65ccbe2a3 (patch)
tree2f40527cb637f836bf3389616c9f952f6ab65b9a /vdr.c
parent8635511b282f8a19db8ef3211b80767efcff74b4 (diff)
downloadvdr-1922b1401048262b1f6a931ebdeebfc65ccbe2a3.tar.gz
vdr-1922b1401048262b1f6a931ebdeebfc65ccbe2a3.tar.bz2
Changed the behaviour of the '0' key in normal viewing mode to have a 3 second timeout
Diffstat (limited to 'vdr.c')
-rw-r--r--vdr.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/vdr.c b/vdr.c
index 6a6c35dc..e51d9508 100644
--- a/vdr.c
+++ b/vdr.c
@@ -22,7 +22,7 @@
*
* The project's page is at http://www.cadsoft.de/vdr
*
- * $Id: vdr.c 1.160 2003/05/29 12:27:26 kls Exp $
+ * $Id: vdr.c 1.161 2003/06/15 14:35:05 kls Exp $
*/
#include <getopt.h>
@@ -57,6 +57,7 @@
#define ACTIVITYTIMEOUT 60 // seconds before starting housekeeping
#define SHUTDOWNWAIT 300 // seconds to wait in user prompt before automatic shutdown
#define MANUALSTART 600 // seconds the next timer must be in the future to assume manual start
+#define ZAPTIMEOUT 3 // seconds until a channel counts as "previous" for switching with '0'
static int Interrupted = 0;
@@ -455,6 +456,8 @@ int main(int argc, char *argv[])
int LastChannel = -1;
int LastTimerChannel = -1;
int PreviousChannel = cDevice::CurrentChannel();
+ int LastLastChannel = PreviousChannel;
+ time_t LastChannelChanged = time(NULL);
time_t LastActivity = 0;
int MaxLatencyTime = 0;
bool ForceShutdown = false;
@@ -492,9 +495,12 @@ int main(int argc, char *argv[])
if (!EITScanner.Active() && cDevice::CurrentChannel() != LastChannel) {
if (!Menu)
Menu = Temp = new cDisplayChannel(cDevice::CurrentChannel(), LastChannel > 0);
- if (LastChannel > 0)
- PreviousChannel = LastChannel;
LastChannel = cDevice::CurrentChannel();
+ LastChannelChanged = time(NULL);
+ }
+ if (LastLastChannel != LastChannel && time(NULL) - LastChannelChanged >= ZAPTIMEOUT) {
+ PreviousChannel = LastLastChannel;
+ LastLastChannel = LastChannel;
}
// Timers and Recordings:
if (!Timers.BeingEdited()) {