don't pay attention to instant record timers, that are not running
[enigma2.git] / lib / python / Screens / InfoBarGenerics.py
index 0ae0dc420b9c6d43941a93a0bc4c1fa2330d5712..1dc0a1175769a6448519681ed642828a63b501b0 100644 (file)
@@ -981,10 +981,15 @@ class InfoBarExtensions:
                        self.pip = self.session.instantiateDialog(PictureInPicture)
                        #self.pip.show()
                        
-                       newservice = str(ServiceReference(self.session.nav.getCurrentlyPlayingServiceReference())) + "s"
-                       self.pipservice = eServiceCenter.getInstance().play(eServiceReference(newservice))
-                       self.pipservice.start()
-                       self.pipshown = True
+                       newservice = self.session.nav.getCurrentlyPlayingServiceReference()
+                       self.pipservice = eServiceCenter.getInstance().play(newservice)
+                       if self.pipservice and not self.pipservice.setTarget(1):
+                               self.pipservice.start()
+                               self.pipshown = True
+                       else:
+                               self.pipservice = None
+                               del self.pip
+
                elif answer[1] == "pipoff":
                        #self.pip.hide()
                        del self.pip
@@ -1064,7 +1069,7 @@ class InfoBarInstantRecord:
                        return
                list = []
                for x in self.recording:
-                       if x.dontSave:
+                       if x.dontSave and x.isRunning():
                                list.append(TimerEntryComponent(x, False))              
 
                if answer[1] == "changeduration":