do nothing when old and new service is equal
[enigma2.git] / lib / python / Components / Sources / CurrentService.py
index 100822bc0cde8255bb88515571d5cb6656d4d699..acc624a2860a433b22db5c2877a8ba9762c11518 100644 (file)
@@ -1,6 +1,7 @@
 from Components.PerServiceDisplay import PerServiceBase
 from enigma import iPlayableService
 from Source import Source
+from Components.Element import cached
 
 class CurrentService(PerServiceBase, Source):
        def __init__(self, navcore):
@@ -13,13 +14,15 @@ class CurrentService(PerServiceBase, Source):
                                # which is not always provided.
                                iPlayableService.evUpdatedInfo: self.serviceEvent,
                                iPlayableService.evUpdatedEventInfo: self.serviceEvent,
-                               iPlayableService.evCuesheetChanged: self.serviceEvent
+                               iPlayableService.evCuesheetChanged: self.serviceEvent,
+                               iPlayableService.evVideoSizeChanged: self.serviceEvent
                        }, with_event=True)
                self.navcore = navcore
 
        def serviceEvent(self, event):
-               self.changed(event)
+               self.changed((self.CHANGED_SPECIFIC, event))
 
+       @cached
        def getCurrentService(self):
                return self.navcore.getCurrentService()