X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/3f60b3adf25d27c908f6e0db7e3cd71e84b9779c..0fa0646e9d874dc905a26551557902b2fc12d79e:/lib/python/Components/config.py diff --git a/lib/python/Components/config.py b/lib/python/Components/config.py index c810e14b..e249caf4 100755 --- a/lib/python/Components/config.py +++ b/lib/python/Components/config.py @@ -287,6 +287,7 @@ class ConfigSelection(ConfigElement): if default is None: default = self.choices.default() + self.default = default if self.value not in self.choices: self.value = default @@ -912,13 +913,14 @@ class ConfigText(ConfigElement, NumericalTextInput): self.timeout() self.overwrite = not self.overwrite elif key == KEY_ASCII: - self.timeout() - newChar = unichr(getPrevAsciiCode()) - if self.allmarked: - self.deleteAllChars() - self.allmarked = False - self.insertChar(newChar, self.marked_pos, False) - self.marked_pos += 1 + self.timeout() + newChar = unichr(getPrevAsciiCode()) + if not self.useableChars or newChar in self.useableChars: + if self.allmarked: + self.deleteAllChars() + self.allmarked = False + self.insertChar(newChar, self.marked_pos, False) + self.marked_pos += 1 elif key in KEY_NUMBERS: owr = self.lastKey == getKeyNumber(key) newChar = self.getKey(getKeyNumber(key)) @@ -1492,7 +1494,7 @@ class ConfigSubDict(dict, object): self.stored_values = dict(values) for (key, val) in self.items(): if str(key) in self.stored_values: - val = self.stored_values[str(key)] + val.saved_value = self.stored_values[str(key)] saved_value = property(getSavedValue, setSavedValue)