X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=Navigation.py;h=1043f80df79e6693ad48815269c130bbc6346c50;hp=715e886b25769eb4a7ccc197bc6c7ecc706d7111;hb=6b6c203ad5b4855eae18ff3a4667a67f74a9a82f;hpb=a9f7393e1d00eb89b8282aae0ddc4f6da33d9ca1 diff --git a/Navigation.py b/Navigation.py index 715e886..1043f80 100644 --- a/Navigation.py +++ b/Navigation.py @@ -50,12 +50,13 @@ class Navigation: for x in self.record_event: x(rec_service, event) - def playService(self, ref, checkParentalControl = True): + def playService(self, ref, checkParentalControl = True, forceRestart = False): oldref = self.currentlyPlayingServiceReference - if ref and oldref and ref == oldref: - print "ignore request to play already running service" + if ref and oldref and ref == oldref and not forceRestart: + print "ignore request to play already running service(1)" return 0 - print "playing", ref and ref.toString() + #print "playing", ref and ref.toString() + print "playing service.." if ref is None: self.stopService() return 0 @@ -64,6 +65,10 @@ class Navigation: if not oldref: oldref = eServiceReference() playref = getBestPlayableServiceReference(ref, oldref) + print "playref", playref + if playref and oldref and playref == oldref and not forceRestart: + print "ignore request to play already running service(2)" + return 0 if not playref or (checkParentalControl and not parentalControl.isServicePlayable(playref, boundFunction(self.playService, checkParentalControl = False))): self.stopService() return 0 @@ -87,7 +92,7 @@ class Navigation: if ref: if ref.flags & eServiceReference.isGroup: ref = getBestPlayableServiceReference(ref, eServiceReference(), simulate) - service = ref and self.pnav and self.pnav.recordService(ref) + service = ref and self.pnav and self.pnav.recordService(ref, simulate) if service is None: print "record returned non-zero" return service @@ -96,8 +101,8 @@ class Navigation: ret = self.pnav and self.pnav.stopRecordService(service) return ret - def getRecordings(self): - return self.pnav and self.pnav.getRecordings() + def getRecordings(self, simulate=False): + return self.pnav and self.pnav.getRecordings(simulate) def getCurrentService(self): if not self.currentlyPlayingService: