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 12:23:42 +0100 |
| commit | 3a4d44ac0f28fa87f1d8cde20b5e38dd644d5b37 (patch) | |
| tree | 9b9ff42f91800ae432a83f0a77069e10d4ab3d35 /lib/python/Screens/ServiceStopScreen.py | |
| parent | 0dfedee9efae9f34cea383b5b79dcd71828002b0 (diff) | |
| download | enigma2-3a4d44ac0f28fa87f1d8cde20b5e38dd644d5b37.tar.gz enigma2-3a4d44ac0f28fa87f1d8cde20b5e38dd644d5b37.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 |
