I am sorry I have to bring this up after a few months, i came over it and had to realize that the new behavior is not what the user expects.
Now i am a little bit afraid that you are going to change this again. (see vdr shutdown handling / streamdev plugin)
How about this: if the user presses the "Power" key to turn off VDR, and VDR tells him/her that there is a recording going on, or a timer will hit in a few minutes, and the user still insists in shutting down VDR *now*, what could be the reason for this? IMHO the only real reason is that the user wants to do some maintenance, for which the device must be turned off (like, for instance, install some hardware or relocate it to a different place).
This assumption is not correct. Not anyone ist going to do some maintenance if he shuts down his box. They are not all freaks like us ;) In fact i found out that there are two main reasons: 1. Saving power. Well, *we* know that shutting down for some minutes isn't really saving anything, but a user thinks "ok, its still 15 minutes to the next recording so its save to shut it down. And the vdr isn't telling him a warning that wakeuptime is shifted if he does so. So it's not intuitive. A timer is a "holy kow" - it should not be modified automatically. 2. Users always think "my box will (has to) return to the same state as it was before the recording". So they shut it down. They do not know that there is this (hidden) feature in the vdr that lets it shut down if he ignores the message and then keeps away his fingers from the remote (as it is no informational message but a question).
On the other hand, the user expects that a running recording is disabled and he says "yes" to the question to shut down anyway.
So here is my solution: - if a recording is running and User presses "Power" tell him the box will shutdown after the current recording - If he presses "Power" a second time, ask if he realy wants to do this (like before) *and* stop any running recordings (i reused the code from Udo which work very well, thanks)
- if a timer is pending within MinEventTimeout ask if he really wants to do so but do *not* modify any timers or wakeup times. I think it's the task of whoever adopts vdr to a mainboard or box to program a valid wakeup time, not the vdr itself.
Cheers, Tim
patch: