X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/1f820106cba412af1408ba56aa9cf51657e48857..29595f9e351b8d7b4f77b0a9885209d45929d2b1:/lib/python/Components/Converter/ServiceName.py diff --git a/lib/python/Components/Converter/ServiceName.py b/lib/python/Components/Converter/ServiceName.py index 79e0c997..7c463a62 100644 --- a/lib/python/Components/Converter/ServiceName.py +++ b/lib/python/Components/Converter/ServiceName.py @@ -1,12 +1,13 @@ from Components.Converter.Converter import Converter -from enigma import iServiceInformation +from enigma import iServiceInformation, iPlayableService +from Components.Element import cached class ServiceName(Converter, object): NAME = 0 PROVIDER = 1 - def __init__(self, type, *args, **kwargs): - Converter.__init__(self) + def __init__(self, type): + Converter.__init__(self, type) if type == "Provider": self.type = self.PROVIDER else: @@ -18,6 +19,7 @@ class ServiceName(Converter, object): return "N/A" return info.getInfoString(what) + @cached def getText(self): service = self.source.service info = service and service.info() @@ -25,8 +27,12 @@ class ServiceName(Converter, object): return "" if self.type == self.NAME: - return service.getName() + return info.getName() elif self.type == self.PROVIDER: return self.getServiceInfoValue(info, iServiceInformation.sProvider) text = property(getText) + + def changed(self, what): + if what[0] != self.CHANGED_SPECIFIC or what[1] in [iPlayableService.evStart]: + Converter.changed(self, what)