X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/892edeac14b30750891d38fcd364a6fdd8d2df19..3d9be241bd3d4558ee28e57bbe405553b8626543:/lib/python/Screens/MessageBox.py diff --git a/lib/python/Screens/MessageBox.py b/lib/python/Screens/MessageBox.py index e9c0786f..deea54ba 100644 --- a/lib/python/Screens/MessageBox.py +++ b/lib/python/Screens/MessageBox.py @@ -62,17 +62,18 @@ class MessageBox(Screen): self.timer.timeout.get().append(self.timerTick) self.onExecBegin.append(self.startTimer) self.origTitle = None - try: - if self.instance and self.instance.isVisible(): - self.timerTick() - else: - self.onShown.append(self.timerTick) - except AttributeError: - self.onShown.append(self.timerTick) + if self.execing: + self.timerTick() + else: + self.onShown.append(self.__onShown) self.timerRunning = True else: self.timerRunning = False + def __onShown(self): + self.onShown.remove(self.__onShown) + self.timerTick() + def startTimer(self): self.timer.start(1000) @@ -80,7 +81,6 @@ class MessageBox(Screen): if self.timerRunning: del self.timer self.setTitle(self.origTitle) - self.onShown.remove(self.timerTick) def timerTick(self): if self.execing: @@ -124,12 +124,8 @@ class MessageBox(Screen): def move(self, direction): if self.close_on_any_key: self.close(True) - self["list"].instance.moveSelection(direction) - if self.timerRunning: - self.timer.stop() - self.setTitle(self.origTitle) - self.timerRunning = False + self.stopTimer() def __repr__(self): return str(type(self)) + "(" + self.text + ")"