mirror of
				https://github.com/vdr-projects/vdr.git
				synced 2025-03-01 10:50:46 +00:00 
			
		
		
		
	Changed the behaviour of the '0' key in normal viewing mode to have a 3 second timeout
This commit is contained in:
		| @@ -724,3 +724,8 @@ Thomas Schmidt <thomas.schmidt@in.stud.tu-ilmenau.de> | |||||||
|  |  | ||||||
| Michael Walle <michael.walle@web.de> | Michael Walle <michael.walle@web.de> | ||||||
|  for reporting a bug in channel switching after Left/Right has been pressed |  for reporting a bug in channel switching after Left/Right has been pressed | ||||||
|  |  | ||||||
|  | Thomas Keil <tk@commedia-group.com> | ||||||
|  |  for suggesting to change the behaviour of the '0' key in normal viewing mode so | ||||||
|  |  that a channel only qualifies as "previous" if it has been selected for at least | ||||||
|  |  3 seconds | ||||||
|   | |||||||
							
								
								
									
										3
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								HISTORY
									
									
									
									
									
								
							| @@ -2263,3 +2263,6 @@ Video Disk Recorder Revision History | |||||||
| - Fixed creating a new channel in the "Channels" menu in case the 'channels.conf' | - Fixed creating a new channel in the "Channels" menu in case the 'channels.conf' | ||||||
|   contains ':@nnn' lines with no text (thanks to Guy Roussin for reporting this |   contains ':@nnn' lines with no text (thanks to Guy Roussin for reporting this | ||||||
|   one). |   one). | ||||||
|  | - Changed the behaviour of the '0' key in normal viewing mode so that a channel | ||||||
|  |   only qualifies as "previous" if it has been selected for at least 3 seconds | ||||||
|  |   (suggested by Thomas Keil). | ||||||
|   | |||||||
							
								
								
									
										3
									
								
								MANUAL
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								MANUAL
									
									
									
									
									
								
							| @@ -154,7 +154,8 @@ Version 1.2 | |||||||
|      menu) by pressing the "Blue" button. |      menu) by pressing the "Blue" button. | ||||||
|  |  | ||||||
|   Pressing the '0' key in normal viewing mode toggles between the current and |   Pressing the '0' key in normal viewing mode toggles between the current and | ||||||
|   the previous channel. |   the previous channel. A channel is considered "previous" if it has been | ||||||
|  |   selected for at least 3 seconds. | ||||||
|  |  | ||||||
|   After switching to a different channel the channel number and name, as well |   After switching to a different channel the channel number and name, as well | ||||||
|   as the current time are displayed at the top of the screen. If available, the |   as the current time are displayed at the top of the screen. If available, the | ||||||
|   | |||||||
							
								
								
									
										12
									
								
								vdr.c
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								vdr.c
									
									
									
									
									
								
							| @@ -22,7 +22,7 @@ | |||||||
|  * |  * | ||||||
|  * The project's page is at http://www.cadsoft.de/vdr |  * 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> | #include <getopt.h> | ||||||
| @@ -57,6 +57,7 @@ | |||||||
| #define ACTIVITYTIMEOUT 60 // seconds before starting housekeeping | #define ACTIVITYTIMEOUT 60 // seconds before starting housekeeping | ||||||
| #define SHUTDOWNWAIT   300 // seconds to wait in user prompt before automatic shutdown | #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 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; | static int Interrupted = 0; | ||||||
|  |  | ||||||
| @@ -455,6 +456,8 @@ int main(int argc, char *argv[]) | |||||||
|   int LastChannel = -1; |   int LastChannel = -1; | ||||||
|   int LastTimerChannel = -1; |   int LastTimerChannel = -1; | ||||||
|   int PreviousChannel = cDevice::CurrentChannel(); |   int PreviousChannel = cDevice::CurrentChannel(); | ||||||
|  |   int LastLastChannel = PreviousChannel; | ||||||
|  |   time_t LastChannelChanged = time(NULL); | ||||||
|   time_t LastActivity = 0; |   time_t LastActivity = 0; | ||||||
|   int MaxLatencyTime = 0; |   int MaxLatencyTime = 0; | ||||||
|   bool ForceShutdown = false; |   bool ForceShutdown = false; | ||||||
| @@ -492,9 +495,12 @@ int main(int argc, char *argv[]) | |||||||
|         if (!EITScanner.Active() && cDevice::CurrentChannel() != LastChannel) { |         if (!EITScanner.Active() && cDevice::CurrentChannel() != LastChannel) { | ||||||
|            if (!Menu) |            if (!Menu) | ||||||
|               Menu = Temp = new cDisplayChannel(cDevice::CurrentChannel(), LastChannel > 0); |               Menu = Temp = new cDisplayChannel(cDevice::CurrentChannel(), LastChannel > 0); | ||||||
|            if (LastChannel > 0) |  | ||||||
|               PreviousChannel = LastChannel; |  | ||||||
|            LastChannel = cDevice::CurrentChannel(); |            LastChannel = cDevice::CurrentChannel(); | ||||||
|  |            LastChannelChanged = time(NULL); | ||||||
|  |            } | ||||||
|  |         if (LastLastChannel != LastChannel && time(NULL) - LastChannelChanged >= ZAPTIMEOUT) { | ||||||
|  |            PreviousChannel = LastLastChannel; | ||||||
|  |            LastLastChannel = LastChannel; | ||||||
|            } |            } | ||||||
|         // Timers and Recordings: |         // Timers and Recordings: | ||||||
|         if (!Timers.BeingEdited()) { |         if (!Timers.BeingEdited()) { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user