diff options
author | 2014-01-09 09:31:24 +0000 | |
---|---|---|
committer | 2014-01-09 09:31:24 +0000 | |
commit | c912b2228a340354d7f951aad25c0bdfc1dee323 (patch) | |
tree | b8bcc433a482e05b37baf1351db1cf42099c9f9b /java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java | |
parent | 85040b7cde2a8d7165bcfff7101ac09caea2af52 (diff) | |
parent | 860c3b8e8cc65e2a2b26b4da0356b5bcff6450e6 (diff) | |
download | latinime-c912b2228a340354d7f951aad25c0bdfc1dee323.tar.gz latinime-c912b2228a340354d7f951aad25c0bdfc1dee323.tar.xz latinime-c912b2228a340354d7f951aad25c0bdfc1dee323.zip |
Merge "Add American typography boolean to SpacingAndPunctuations"
Diffstat (limited to 'java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java b/java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java index 0500f4ad4..124c97517 100644 --- a/java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java +++ b/java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java @@ -18,6 +18,7 @@ package com.android.inputmethod.latin.settings; import android.content.res.Resources; +import com.android.inputmethod.annotations.UsedForTesting; import com.android.inputmethod.keyboard.internal.KeySpecParser; import com.android.inputmethod.latin.Constants; import com.android.inputmethod.latin.Dictionary; @@ -29,6 +30,7 @@ import com.android.inputmethod.latin.utils.StringUtils; import java.util.ArrayList; import java.util.Arrays; +import java.util.Locale; public final class SpacingAndPunctuations { private final int[] mSymbolsPrecededBySpace; @@ -39,10 +41,11 @@ public final class SpacingAndPunctuations { private final int mSentenceSeparator; public final String mSentenceSeparatorAndSpace; public final boolean mCurrentLanguageHasSpaces; + public final boolean mUsesAmericanTypography; - public static final SpacingAndPunctuations DEFAULT = new SpacingAndPunctuations(); - - private SpacingAndPunctuations() { + // TODO: Remove this constructor. + @UsedForTesting + SpacingAndPunctuations(final Locale locale) { mSymbolsPrecededBySpace = new int[] { '(', '[', '{', '&' }; Arrays.sort(mSymbolsPrecededBySpace); mSymbolsFollowedBySpace = new int[] { '.', ',', ';', ':', '!', '?', ')', ']', '}', '&' }; @@ -55,6 +58,7 @@ public final class SpacingAndPunctuations { mSuggestPuncList = createSuggestPuncList(suggestPuncsSpec); mWordSeparators = "&\t \n()[]{}*&<>+=|.,;:!?/_\""; mCurrentLanguageHasSpaces = true; + mUsesAmericanTypography = Locale.ENGLISH.getLanguage().equals(locale.getLanguage()); } public SpacingAndPunctuations(final Resources res) { @@ -75,6 +79,10 @@ public final class SpacingAndPunctuations { mSentenceSeparatorAndSpace = new String(new int[] { mSentenceSeparator, Constants.CODE_SPACE }, 0, 2); mCurrentLanguageHasSpaces = res.getBoolean(R.bool.current_language_has_spaces); + final Locale locale = res.getConfiguration().locale; + // Heuristic: we use American Typography rules because it's the most common rules for all + // English variants. + mUsesAmericanTypography = Locale.ENGLISH.getLanguage().equals(locale.getLanguage()); } // Helper functions to create member values. |