fix possible bluescreen
[enigma2.git] / mytest.py
index 2b032e6c2244ff10169862e491d0be2516779f11..58c5c68039edcc79ffd8b8fdb39ba7ce90341009 100644 (file)
--- a/mytest.py
+++ b/mytest.py
@@ -1,6 +1,6 @@
-from Tools import RedirectOutput
+from Tools import RedirectOutput, RedirectTime
 from enigma import runMainloop, eDVBDB, eTimer, quitMainloop, eDVBVolumecontrol, \
-       getDesktop, ePythonConfigQuery, eAVSwitch, eWindow
+       getDesktop, ePythonConfigQuery, eAVSwitch, eWindow, eServiceEvent
 from tools import *
 
 from Components.Language import language
@@ -387,7 +387,7 @@ class VolumeControl:
                                self.muteDialog.hide()
                                self.volumeDialog.setValue(vol)
 
-from Screens.Standby import Standby
+import Screens.Standby
 
 class PowerKey:
        """ PowerKey stuff - handles the powerkey press and powerkey release actions"""
@@ -398,7 +398,7 @@ class PowerKey:
                self.powerKeyTimer.timeout.get().append(self.powertimer)
                globalActionMap.actions["powerdown"]=self.powerdown
                globalActionMap.actions["powerup"]=self.powerup
-               self.standbyblocked = 0
+               self.standbyblocked = 1
 #              self["PowerKeyActions"] = HelpableActionMap(self, "PowerKeyActions",
                        #{
                                #"powerdown": self.powerdown,
@@ -409,7 +409,8 @@ class PowerKey:
 
        def powertimer(self):   
                print "PowerOff - Now!"
-               self.quit()
+               if not Screens.Standby.inTryQuitMainloop:
+                       self.session.open(Screens.Standby.TryQuitMainloop, 1)
        
        def powerdown(self):
                self.standbyblocked = 0
@@ -422,12 +423,8 @@ class PowerKey:
                        self.standby()
 
        def standby(self):
-               if self.session.current_dialog and self.session.current_dialog.ALLOW_SUSPEND:
-                       self.session.open(Standby, self)
-
-       def quit(self):
-               # halt
-               quitMainloop(1)
+               if not Screens.Standby.inStandby and self.session.current_dialog and self.session.current_dialog.ALLOW_SUSPEND:
+                       self.session.open(Screens.Standby.Standby)
 
 from Screens.Scart import Scart
 
@@ -489,7 +486,7 @@ def runScreenTest():
 
        # we need session.scart to access it from within menu.xml
        session.scart = AutoScartControl(session)
-       
+
        runReactor()
        
        configfile.save()