From 528ebb123b11d7a75d75f4fd79e79d87b02c419f Mon Sep 17 00:00:00 2001 From: Dimo Karaivanov Date: Thu, 3 Nov 2022 17:56:00 +0200 Subject: [PATCH] fixed incorrect settings reset on startup --- .../github/sspanak/tt9/ime/TraditionalT9.java | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/io/github/sspanak/tt9/ime/TraditionalT9.java b/src/io/github/sspanak/tt9/ime/TraditionalT9.java index 17ffde38..3410d6a7 100644 --- a/src/io/github/sspanak/tt9/ime/TraditionalT9.java +++ b/src/io/github/sspanak/tt9/ime/TraditionalT9.java @@ -41,12 +41,8 @@ public class TraditionalT9 extends KeyPadHandler { private void loadPreferences() { mLanguage = LanguageCollection.getLanguage(prefs.getInputLanguage()); mEnabledLanguages = prefs.getEnabledLanguages(); - validateLanguages(); - mInputMode = InputMode.getInstance(prefs.getInputMode()); - mInputMode = InputModeValidator.validateMode(prefs, mInputMode, allowedInputModes); - - InputModeValidator.validateTextCase(prefs, mInputMode, prefs.getTextCase()); + mInputMode.setTextCase(prefs.getTextCase()); } @@ -69,10 +65,17 @@ public class TraditionalT9 extends KeyPadHandler { protected void onRestart(EditorInfo inputField) { - // determine the valid state for the current input field and preferences - mEnabledLanguages = prefs.getEnabledLanguages(); // in case we are back from Preferences screen, update the language list + // in case we are back from Preferences screen, update the language list + mEnabledLanguages = prefs.getEnabledLanguages(); + validateLanguages(); + + // some input fields support only numbers or do not accept predictions determineAllowedInputModes(inputField); - determineNextTextCase(); // Only in some modes. If they support it, let's overwrite the default. + mInputMode = InputModeValidator.validateMode(prefs, mInputMode, allowedInputModes); + + // Some modes may want to change the default text case based on grammar rules. + determineNextTextCase(); + InputModeValidator.validateTextCase(prefs, mInputMode, prefs.getTextCase()); // build the UI clearSuggestions();