From a93fdfbefe632a02e33165c7d694a004b93042be Mon Sep 17 00:00:00 2001 From: Dimo Karaivanov Date: Fri, 25 Aug 2023 10:11:39 +0300 Subject: [PATCH] attempting to fix the incorrect UPPERCASE at startup again --- src/io/github/sspanak/tt9/ime/TraditionalT9.java | 11 ----------- .../github/sspanak/tt9/ime/modes/ModePredictive.java | 6 ++++++ 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/src/io/github/sspanak/tt9/ime/TraditionalT9.java b/src/io/github/sspanak/tt9/ime/TraditionalT9.java index b4ec3d2d..7d9ef959 100644 --- a/src/io/github/sspanak/tt9/ime/TraditionalT9.java +++ b/src/io/github/sspanak/tt9/ime/TraditionalT9.java @@ -117,21 +117,10 @@ public class TraditionalT9 extends KeyPadHandler { * last saved mode. */ private void determineTextCase() { - String debugString = ""; - mInputMode.defaultTextCase(); - debugString += "default text case: " + mInputMode.getTextCase() + "; "; - mInputMode.setTextFieldCase(textField.determineTextCase(inputType)); mInputMode.determineNextWordTextCase(textField.isThereText(), textField.getTextBeforeCursor()); - debugString += "after determine: " + mInputMode.getTextCase() + "; "; - InputModeValidator.validateTextCase(mInputMode, settings.getTextCase()); - debugString += "after validation: " + mInputMode.getTextCase(); - - if (mInputMode.getTextCase() == InputMode.CASE_UPPER) { - Logger.e("determineTextCase", "====> UPPERCASE ENFORCED: " + debugString); - } } diff --git a/src/io/github/sspanak/tt9/ime/modes/ModePredictive.java b/src/io/github/sspanak/tt9/ime/modes/ModePredictive.java index 58178ca7..5c3df9a1 100644 --- a/src/io/github/sspanak/tt9/ime/modes/ModePredictive.java +++ b/src/io/github/sspanak/tt9/ime/modes/ModePredictive.java @@ -299,6 +299,12 @@ public class ModePredictive extends InputMode { textCase = autoTextCase.determineNextWordTextCase(isThereText, textCase, textFieldTextCase, textBeforeCursor); } + @Override + public int getTextCase() { + // Filter out the internally used text cases. They have no meaning outside this class. + return (textCase == CASE_UPPER || textCase == CASE_LOWER) ? textCase : CASE_CAPITALIZE; + } + @Override public void nextTextCase() { textFieldTextCase = CASE_UNDEFINED; // since it's a user's choice, the default matters no more