diff options
Diffstat (limited to 'srcs/juloo.keyboard2/Keyboard2.java')
| -rw-r--r-- | srcs/juloo.keyboard2/Keyboard2.java | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/srcs/juloo.keyboard2/Keyboard2.java b/srcs/juloo.keyboard2/Keyboard2.java index 2742de7..f8aab34 100644 --- a/srcs/juloo.keyboard2/Keyboard2.java +++ b/srcs/juloo.keyboard2/Keyboard2.java @@ -33,7 +33,7 @@ public class Keyboard2 extends InputMethodService // If not 'null', the layout to use instead of [_currentTextLayout]. private KeyboardData _currentSpecialLayout; private Current_text_layout _currentTextLayout; - // Layout associated with the currently selected locale. + // Layout associated with the currently selected locale. Not 'null'. private KeyboardData _localeTextLayout; private ViewGroup _emojiPane = null; public int actionId; // Action performed by the Action key. @@ -99,15 +99,6 @@ public class Keyboard2 extends InputMethodService return Arrays.asList(); } - private void refreshSubtypeLayout(InputMethodSubtype subtype) - { - String s = subtype.getExtraValueOf("default_layout"); - if (s != null) - _localeTextLayout = _config.layout_of_string(getResources(), s); - else - _localeTextLayout = KeyboardData.load(getResources(), R.xml.qwerty); - } - private void extra_keys_of_subtype(Set<KeyValue> dst, InputMethodSubtype subtype) { String extra_keys = subtype.getExtraValueOf("extra_keys"); @@ -164,6 +155,7 @@ public class Keyboard2 extends InputMethodService else _config.shouldOfferSwitchingToNextInputMethod = shouldOfferSwitchingToNextInputMethod(); _config.shouldOfferVoiceTyping = (get_voice_typing_im(imm) != null); + KeyboardData default_layout = null; if (VERSION.SDK_INT < 12) { // Subtypes won't work well under API level 12 (getExtraValueOf) @@ -179,10 +171,15 @@ public class Keyboard2 extends InputMethodService } else { - refreshSubtypeLayout(subtype); + String s = subtype.getExtraValueOf("default_layout"); + if (s != null) + default_layout = _config.layout_of_string(getResources(), s); refreshAccentsOption(imm, subtype); } } + if (default_layout == null) + default_layout = KeyboardData.load(getResources(), R.xml.qwerty); + _localeTextLayout = default_layout; if (_config.second_layout == null) { _config.shouldOfferSwitchingToSecond = false; |
