get rid of unneede global keywords
[vuplus_dvbapp] / lib / python / Screens / InfoBarGenerics.py
index 065069b..31108c8 100644 (file)
@@ -227,7 +227,7 @@ class InfoBarNumberZap:
                        bouquetlist = serviceHandler.list(bouquet)
                        if not bouquetlist is None:
                                while number:
-                                       bouquet = self.servicelist.appendDVBTypes(bouquetlist.getNext())
+                                       bouquet = bouquetlist.getNext()
                                        if not bouquet.valid(): #check end of list
                                                break
                                        if bouquet.flags & eServiceReference.isDirectory:
@@ -1573,7 +1573,7 @@ class InfoBarAdditionalInfo:
                        self["NimB_Active"].hide()
 
        def checkTunerState(self, service):
-               info = service.frontendInfo()
+               info = service and service.frontendInfo()
                feNumber = info and info.getFrontendInfo(iFrontendInformation.frontendNumber)
                if feNumber is None:
                        self["NimA"].hide()
@@ -1587,7 +1587,7 @@ class InfoBarAdditionalInfo:
 
        def gotServiceEvent(self, ev):
                service = self.session.nav.getCurrentService()
-               if ev == iPlayableService.evStart:
+               if ev == iPlayableService.evUpdatedInfo or ev == iPlayableService.evEnd:
                        self.checkTunerState(service)
 
 class InfoBarNotifications:
@@ -1609,6 +1609,11 @@ class InfoBarNotifications:
                        
                        Notifications.notifications = Notifications.notifications[1:]
                        cb = n[0]
+
+                       if n[3].has_key("onSessionOpenCallback"):
+                               n[3]["onSessionOpenCallback"]()
+                               del n[3]["onSessionOpenCallback"]
+
                        if cb is not None:
                                dlg = self.session.openWithCallback(cb, n[1], *n[2], **n[3])
                        else:
@@ -1908,10 +1913,7 @@ class InfoBarServiceErrorPopupSupport:
                        eDVBServicePMTHandler.eventEOF: None
                }
 
-               if error not in errors:
-                       error = None
-
-               error = error is not None and errors[error]
+               error = errors.get(error) #this returns None when the key not exist in the dict
 
                if error is not None:
                        Notifications.AddPopup(text = error, type = MessageBox.TYPE_ERROR, timeout = 5, id = "ZapError")