X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/3a48091b7614b77ce8c367bd64206d58bb17886b..be8b337beb4b8ee4bd23f5d54b6072c20ffbb842:/lib/python/Screens/InfoBarGenerics.py diff --git a/lib/python/Screens/InfoBarGenerics.py b/lib/python/Screens/InfoBarGenerics.py index 0cc610a1..fed7287c 100644 --- a/lib/python/Screens/InfoBarGenerics.py +++ b/lib/python/Screens/InfoBarGenerics.py @@ -278,8 +278,16 @@ class InfoBarChannelSelection: "switchChannelDown": self.switchChannelDown, "zapUp": (self.zapUp, _("next channel")), "zapDown": (self.zapDown, _("previous channel")), + "historyBack": (self.historyBack, _("previous channel in history")), + "historyNext": (self.historyNext, _("next channel in history")) }) + def historyBack(self): + self.servicelist.historyBack() + + def historyNext(self): + self.servicelist.historyNext() + def switchChannelUp(self): self.servicelist.moveUp() self.session.execDialog(self.servicelist) @@ -336,7 +344,7 @@ class InfoBarEPG: self.servicelist.setCurrentSelection(service) #select the service in servicelist self.servicelist.zap() - def openBouquetEPG(self, bouquet): + def openBouquetEPG(self, bouquet, withCallback=True): ptr=eEPGCache.getInstance() services = [ ] servicelist = eServiceCenter.getInstance().list(bouquet) @@ -350,22 +358,28 @@ class InfoBarEPG: services.append(ServiceReference(service)) if len(services): self.epg_bouquet = bouquet - self.session.openWithCallback(self.closed, EPGSelection, services, self.zapToService) + if withCallback: + self.session.openWithCallback(self.closed, EPGSelection, services, self.zapToService) + else: + self.session.open(EPGSelection, services, self.zapToService) def closed(self, ret): if ret: self.close(ret) - def openMultiServiceEPG(self): + def openMultiServiceEPG(self, withCallback=True): bouquets = self.servicelist.getBouquetList() if bouquets is None: cnt = 0 else: cnt = len(bouquets) if cnt > 1: # show bouquet list - self.session.openWithCallback(self.closed, BouquetSelector, bouquets, self.openBouquetEPG) + if withCallback: + self.session.openWithCallback(self.closed, BouquetSelector, bouquets, self.openBouquetEPG) + else: + self.session.open(BouquetSelector, bouquets, self.openBouquetEPG) elif cnt == 1: - self.openBouquetEPG(bouquets[0][1]) + self.openBouquetEPG(bouquets[0][1], withCallback) def openSingleServiceEPG(self): ref=self.session.nav.getCurrentlyPlayingServiceReference() @@ -395,7 +409,7 @@ class InfoBarEPG: self.session.open(EventViewEPGSelect, self.epglist[0], ServiceReference(ref), self.eventViewCallback, self.openSingleServiceEPG, self.openMultiServiceEPG) else: print "no epg for the service avail.. so we show multiepg instead of eventinfo" - self.openMultiServiceEPG() + self.openMultiServiceEPG(False) def eventViewCallback(self, setEvent, setService, val): #used for now/next displaying if len(self.epglist) > 1: