The X server keeps "matching" lists of layouts and variants that, when combined together, give a list of what is actually set for input handling. However, for the default layout, the X server doesn't add the empty "" variant to make the lists actually matching.
Signed-off-by: Vratislav Podzimek vpodzime@redhat.com --- pyanaconda/keyboard.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/pyanaconda/keyboard.py b/pyanaconda/keyboard.py index e86771a..48a2789 100644 --- a/pyanaconda/keyboard.py +++ b/pyanaconda/keyboard.py @@ -514,7 +514,11 @@ class XklWrapper(object): cur_group = num_groups - 1
layout = self._rec.layouts[cur_group] - variant = self._rec.variants[cur_group] + try: + variant = self._rec.variants[cur_group] + except IndexError: + # X server may have forgotten to add the "" variant for its default layout + variant = ""
self._engine.stop_listen(Xkl.EngineListenModes.TRACK_KEYBOARD_STATE)
diff --git a/pyanaconda/keyboard.py b/pyanaconda/keyboard.py index e86771a..48a2789 100644 --- a/pyanaconda/keyboard.py +++ b/pyanaconda/keyboard.py @@ -514,7 +514,11 @@ class XklWrapper(object): cur_group = num_groups - 1
layout = self._rec.layouts[cur_group]
variant = self._rec.variants[cur_group]
try:variant = self._rec.variants[cur_group]except IndexError:# X server may have forgotten to add the "" variant for its default layoutvariant = "" self._engine.stop_listen(Xkl.EngineListenModes.TRACK_KEYBOARD_STATE)
This looks fine too.
- Chris
anaconda-patches@lists.fedorahosted.org