check for presence of a correspondant .srt subtitle file and try parsing it
[enigma2.git] / Navigation.py
index b4110f4949ea0a658a1be7b2aeca6f7c275f6959..bda6f584395327a7e1d4c7401328532f35a1d608 100644 (file)
@@ -1,9 +1,11 @@
 from enigma import eServiceCenter, eServiceReference, pNavigation, getBestPlayableServiceReference, iPlayableService
 from Components.ParentalControl import parentalControl
 from Tools.BoundFunction import boundFunction
+from Tools.DreamboxHardware import setFPWakeuptime, getFPWakeuptime, getFPWasTimerWakeup, clearFPWasTimerWakeup
+from time import time
 import RecordTimer
 import SleepTimer
-
+import Screens.Standby
 import NavigationInstance
 import ServiceReference
 
@@ -27,6 +29,13 @@ class Navigation:
                self.currentlyPlayingServiceReference = None
                self.currentlyPlayingService = None
                self.RecordTimer = RecordTimer.RecordTimer()
+               if getFPWasTimerWakeup():
+                       clearFPWasTimerWakeup()
+                       if getFPWasTimerWakeup(): # sanity check to detect if the FP driver is working correct!
+                               print "buggy fp driver detected!!! please update drivers.... ignore timer wakeup!"
+                       elif len(self.getRecordings()) or abs(self.RecordTimer.getNextRecordingTime() - time()) <= 360:
+                               if not Screens.Standby.inTryQuitMainloop: # not a shutdown messagebox is open
+                                       RecordTimer.RecordTimerEntry.TryQuitMainloop(False) # start shutdown handling
                self.SleepTimer = SleepTimer.SleepTimer()
 
        def dispatchEvent(self, i):
@@ -103,13 +112,6 @@ class Navigation:
        def pause(self, p):
                return self.pnav and self.pnav.pause(p)
 
-       def recordWithTimer(self, ref, begin, end, name, description, eit):
-               if isinstance(ref, eServiceReference):
-                       ref = ServiceReference.ServiceReference(ref)
-               entry = RecordTimer.RecordTimerEntry(ref, begin, end, name, description, eit)
-               self.RecordTimer.record(entry)
-               return entry
-       
        def shutdown(self):
                self.RecordTimer.shutdown()
                self.ServiceHandler = None