From 9083b11e3985534d45494cd89e0c54fddf7e5b52 Mon Sep 17 00:00:00 2001 From: Andreas Monzner Date: Wed, 25 Jun 2008 16:09:48 +0000 Subject: [PATCH] now nav.getCurrentlyPlayingServiceReference() and nav.getCurrentService() returns valid service until iPlayableService.evEnd is received (this fixes among other things the problem that subtitles are not working when switching from a live dvb service to a dvb playback service or vice versa) --- Navigation.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/Navigation.py b/Navigation.py index 7b1deb0..b4110f4 100644 --- a/Navigation.py +++ b/Navigation.py @@ -1,4 +1,4 @@ -from enigma import eServiceCenter, eServiceReference, pNavigation, getBestPlayableServiceReference +from enigma import eServiceCenter, eServiceReference, pNavigation, getBestPlayableServiceReference, iPlayableService from Components.ParentalControl import parentalControl from Tools.BoundFunction import boundFunction import RecordTimer @@ -32,6 +32,9 @@ class Navigation: def dispatchEvent(self, i): for x in self.event: x(i) + if i == iPlayableService.evEnd: + self.currentlyPlayingServiceReference = None + self.currentlyPlayingService = None def dispatchRecordEvent(self, rec_service, event): # print "record_event", rec_service, event @@ -44,8 +47,6 @@ class Navigation: print "ignore request to play already running service" return 0 print "playing", ref and ref.toString() - self.currentlyPlayingServiceReference = None - self.currentlyPlayingService = None if ref is None: self.stopService() return 0 @@ -98,8 +99,6 @@ class Navigation: print "stopService" if self.pnav: self.pnav.stopService() - self.currentlyPlayingService = None - self.currentlyPlayingServiceReference = None def pause(self, p): return self.pnav and self.pnav.pause(p) -- 2.7.4