diff options
| author | Stefan Pluecken <stefan.pluecken@multimedia-labs.de> | 2010-01-24 12:23:42 +0100 |
|---|---|---|
| committer | Stefan Pluecken <stefan.pluecken@multimedia-labs.de> | 2010-01-24 14:07:09 +0100 |
| commit | 6b1138ae6ea57dfb1a345d2a4ad393ba0bc587c8 (patch) | |
| tree | 8038b70aa13b3938b6d6def5110305cd51ed09d0 /lib/python/Screens/ServiceStopScreen.py | |
| parent | 198d166196d8c4b1824be0347bb324890e1cfc5c (diff) | |
| download | enigma2-6b1138ae6ea57dfb1a345d2a4ad393ba0bc587c8.tar.gz enigma2-6b1138ae6ea57dfb1a345d2a4ad393ba0bc587c8.zip | |
fixes bug #380
stop service when entering tuner setup (and ask to restore afterwards)
Diffstat (limited to 'lib/python/Screens/ServiceStopScreen.py')
| -rw-r--r-- | lib/python/Screens/ServiceStopScreen.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/python/Screens/ServiceStopScreen.py b/lib/python/Screens/ServiceStopScreen.py new file mode 100644 index 00000000..3b3dda88 --- /dev/null +++ b/lib/python/Screens/ServiceStopScreen.py @@ -0,0 +1,29 @@ +from Screens.MessageBox import MessageBox + +class ServiceStopScreen: + def __init__(self): + try: + self.session + except: + print "[ServiceStopScreen] ERROR: no self.session set" + + self.oldref = None + self.onClose.append(self.__onClose) + + def stopService(self): + self.oldref = self.session.nav.getCurrentlyPlayingServiceReference() + self.session.nav.stopService() + + def __onClose(self): + self.session.nav.playService(self.oldref) + + def restoreService(self, msg = _("Zap back to previously tuned service?")): + if self.oldref: + self.session.openWithCallback(self.restartPrevService, MessageBox, msg, MessageBox.TYPE_YESNO) + else: + self.restartPrevService(False) + + def restartPrevService(self, yesno): + if not yesno: + self.oldref=None + self.close()
\ No newline at end of file |
