diff options
| -rw-r--r-- | lib/python/Screens/InputBox.py | 4 | ||||
| -rw-r--r-- | lib/python/Screens/Screen.py | 3 | ||||
| -rwxr-xr-x | mytest.py | 2 |
3 files changed, 4 insertions, 5 deletions
diff --git a/lib/python/Screens/InputBox.py b/lib/python/Screens/InputBox.py index 13797687..7dd7b127 100644 --- a/lib/python/Screens/InputBox.py +++ b/lib/python/Screens/InputBox.py @@ -43,9 +43,9 @@ class InputBox(Screen): }, -1) if self["input"].type == Input.TEXT: - self.onShow.append(self.setKeyboardModeAscii) + self.onExecBegin.append(self.setKeyboardModeAscii) else: - self.onShow.append(self.setKeyboardModeNone) + self.onExecBegin.append(self.setKeyboardModeNone) def gotAsciiCode(self): self["input"].handleAscii(getPrevAsciiCode()) diff --git a/lib/python/Screens/Screen.py b/lib/python/Screens/Screen.py index 32101869..4a0accda 100644 --- a/lib/python/Screens/Screen.py +++ b/lib/python/Screens/Screen.py @@ -48,9 +48,6 @@ class Screen(dict, GUISkin): # stand alone screens (for example web screens) # don't care about having or not having focus. self.stand_alone = False - - self.onShow.append(self.saveKeyboardMode) - self.onHide.append(self.restoreKeyboardMode) self.keyboardMode = None def saveKeyboardMode(self): @@ -214,6 +214,7 @@ class Session: self.summary.show() c.addSummary(self.summary) + c.saveKeyboardMode() c.execBegin() # when execBegin opened a new dialog, don't bother showing the old one. @@ -225,6 +226,7 @@ class Session: self.in_exec = False self.current_dialog.execEnd() + self.current_dialog.restoreKeyboardMode() self.current_dialog.hide() if last: |
