X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/f89be45e529912564bf82e83641ec6b4805758fe..c08f4bf8728fe649704471ff1ef168d38f5f0b89:/RecordTimer.py diff --git a/RecordTimer.py b/RecordTimer.py index f330f8c0..8689c056 100644 --- a/RecordTimer.py +++ b/RecordTimer.py @@ -7,9 +7,11 @@ from Components.config import config, ConfigYesNo import timer import xml.dom.minidom -from enigma import quitMainloop, eEPGCache, getBestPlayableServiceReference, eServiceReference +from enigma import eEPGCache, getBestPlayableServiceReference, eServiceReference from Screens.MessageBox import MessageBox +from Screens.Standby import Standby, TryQuitMainloop, inStandby, inTryQuitMainloop + import NavigationInstance from time import localtime @@ -69,7 +71,6 @@ class RecordTimerEntry(timer.TimerEntry): self.start_prepare = 0 self.justplay = justplay self.afterEvent = afterEvent - self.session = None self.log_entries = [] self.resetState() @@ -212,12 +213,23 @@ class RecordTimerEntry(timer.TimerEntry): NavigationInstance.instance.stopRecordService(self.record_service) self.record_service = None if self.afterEvent == AFTEREVENT.STANDBY: - if self.session is not None: - self.session.open(Standby, self) - elif self.afterEvent == AFTEREVENT.DEEPSTANDBY: - quitMainloop(1) + global inStandby + if not inStandby: + Notifications.AddNotificationWithCallback(self.sendStandbyNotification, MessageBox, _("A finished record timer wants to set your\nDreambox to standby. Do that now?"), timeout = 20) + if self.afterEvent == AFTEREVENT.DEEPSTANDBY: + global inTryQuitMainloop + if not inTryQuitMainloop: + Notifications.AddNotificationWithCallback(self.sendTryQuitMainloopNotification, MessageBox, _("A finished record timer wants to shut down\nyour Dreambox. Shutdown now?"), timeout = 20) return True + def sendStandbyNotification(self, answer): + if answer: + Notifications.AddNotification(Standby) + + def sendTryQuitMainloopNotification(self, answer): + if answer: + Notifications.AddNotification(TryQuitMainloop, 1) + def getNextActivation(self): if self.state == self.StateEnded: return self.end