Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6ec1209a authored by Jean Chalard's avatar Jean Chalard
Browse files

Fix a bug where quotes and dashes are considered letters

Bug: 6174065
Change-Id: I702760d44ead0eeb60d06360aa3bb03c2ec73325
parent 2be7a37a
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -2059,10 +2059,12 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
        if (ic == null) return false;
        CharSequence before = ic.getTextBeforeCursor(1, 0);
        CharSequence after = ic.getTextAfterCursor(1, 0);
        if (!TextUtils.isEmpty(before) && !mSettingsValues.isWordSeparator(before.charAt(0))) {
        if (!TextUtils.isEmpty(before) && !mSettingsValues.isWordSeparator(before.charAt(0))
                && !mSettingsValues.isSymbolExcludedFromWordSeparators(before.charAt(0))) {
            return true;
        }
        if (!TextUtils.isEmpty(after) && !mSettingsValues.isWordSeparator(after.charAt(0))) {
        if (!TextUtils.isEmpty(after) && !mSettingsValues.isWordSeparator(after.charAt(0))
                && !mSettingsValues.isSymbolExcludedFromWordSeparators(after.charAt(0))) {
            return true;
        }
        return false;
+16 −0
Original line number Diff line number Diff line
@@ -554,6 +554,22 @@ public class InputLogicTests extends ServiceTestCase<LatinIME> {
                EXPECTED_RESULT, mTextView.getText().toString());
    }

    public void testAutoCorrectionWithSingleQuoteInside() {
        final String WORD_TO_TYPE = "you'f ";
        final String EXPECTED_RESULT = "you'd ";
        type(WORD_TO_TYPE);
        assertEquals("auto-correction with single quote inside",
                EXPECTED_RESULT, mTextView.getText().toString());
    }

    public void testAutoCorrectionWithSingleQuotesAround() {
        final String WORD_TO_TYPE = "'tgis' ";
        final String EXPECTED_RESULT = "'this' ";
        type(WORD_TO_TYPE);
        assertEquals("auto-correction with single quotes around",
                EXPECTED_RESULT, mTextView.getText().toString());
    }

    // A helper class to ease span tests
    private static class Span {
        final SpannableStringBuilder mInputText;