aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2014-01-08 09:03:14 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-01-08 09:03:15 +0000
commit1e7f2809d2ec544b07956bdbe89c905c981b75fc (patch)
treecb75585be971112a5f19f25233ab8e8a7f2031c3 /java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java
parentd4843c25e2b9f7e7c7c972af0cb22aac89e15d7d (diff)
parent8bc427799a9b7a53103d1edba4a447033fbd8cfa (diff)
downloadlatinime-1e7f2809d2ec544b07956bdbe89c905c981b75fc.tar.gz
latinime-1e7f2809d2ec544b07956bdbe89c905c981b75fc.tar.xz
latinime-1e7f2809d2ec544b07956bdbe89c905c981b75fc.zip
Merge "Revert "Separate spacing and punctuation related settings values""
Diffstat (limited to 'java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java')
-rw-r--r--java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java124
1 files changed, 0 insertions, 124 deletions
diff --git a/java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java b/java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java
deleted file mode 100644
index 0500f4ad4..000000000
--- a/java/src/com/android/inputmethod/latin/settings/SpacingAndPunctuations.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Copyright (C) 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.inputmethod.latin.settings;
-
-import android.content.res.Resources;
-
-import com.android.inputmethod.keyboard.internal.KeySpecParser;
-import com.android.inputmethod.latin.Constants;
-import com.android.inputmethod.latin.Dictionary;
-import com.android.inputmethod.latin.R;
-import com.android.inputmethod.latin.SuggestedWords;
-import com.android.inputmethod.latin.SuggestedWords.SuggestedWordInfo;
-import com.android.inputmethod.latin.utils.CollectionUtils;
-import com.android.inputmethod.latin.utils.StringUtils;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-
-public final class SpacingAndPunctuations {
- private final int[] mSymbolsPrecededBySpace;
- private final int[] mSymbolsFollowedBySpace;
- private final int[] mWordConnectors;
- public final SuggestedWords mSuggestPuncList;
- public final String mWordSeparators;
- private final int mSentenceSeparator;
- public final String mSentenceSeparatorAndSpace;
- public final boolean mCurrentLanguageHasSpaces;
-
- public static final SpacingAndPunctuations DEFAULT = new SpacingAndPunctuations();
-
- private SpacingAndPunctuations() {
- mSymbolsPrecededBySpace = new int[] { '(', '[', '{', '&' };
- Arrays.sort(mSymbolsPrecededBySpace);
- mSymbolsFollowedBySpace = new int[] { '.', ',', ';', ':', '!', '?', ')', ']', '}', '&' };
- Arrays.sort(mSymbolsFollowedBySpace);
- mWordConnectors = new int[] { '\'', '-' };
- Arrays.sort(mWordConnectors);
- mSentenceSeparator = Constants.CODE_PERIOD;
- mSentenceSeparatorAndSpace = ". ";
- final String[] suggestPuncsSpec = new String[] { "!", "?", ",", ":", ";" };
- mSuggestPuncList = createSuggestPuncList(suggestPuncsSpec);
- mWordSeparators = "&\t \n()[]{}*&<>+=|.,;:!?/_\"";
- mCurrentLanguageHasSpaces = true;
- }
-
- public SpacingAndPunctuations(final Resources res) {
- mSymbolsPrecededBySpace =
- StringUtils.toCodePointArray(res.getString(R.string.symbols_preceded_by_space));
- Arrays.sort(mSymbolsPrecededBySpace);
- mSymbolsFollowedBySpace =
- StringUtils.toCodePointArray(res.getString(R.string.symbols_followed_by_space));
- Arrays.sort(mSymbolsFollowedBySpace);
- mWordConnectors =
- StringUtils.toCodePointArray(res.getString(R.string.symbols_word_connectors));
- Arrays.sort(mWordConnectors);
- final String[] suggestPuncsSpec = KeySpecParser.splitKeySpecs(res.getString(
- R.string.suggested_punctuations));
- mSuggestPuncList = createSuggestPuncList(suggestPuncsSpec);
- mWordSeparators = res.getString(R.string.symbols_word_separators);
- mSentenceSeparator = res.getInteger(R.integer.sentence_separator);
- mSentenceSeparatorAndSpace = new String(new int[] {
- mSentenceSeparator, Constants.CODE_SPACE }, 0, 2);
- mCurrentLanguageHasSpaces = res.getBoolean(R.bool.current_language_has_spaces);
- }
-
- // Helper functions to create member values.
- private static SuggestedWords createSuggestPuncList(final String[] puncs) {
- final ArrayList<SuggestedWordInfo> puncList = CollectionUtils.newArrayList();
- if (puncs != null) {
- for (final String puncSpec : puncs) {
- // TODO: Stop using KeySpceParser.getLabel().
- puncList.add(new SuggestedWordInfo(KeySpecParser.getLabel(puncSpec),
- SuggestedWordInfo.MAX_SCORE, SuggestedWordInfo.KIND_HARDCODED,
- Dictionary.DICTIONARY_HARDCODED,
- SuggestedWordInfo.NOT_AN_INDEX /* indexOfTouchPointOfSecondWord */,
- SuggestedWordInfo.NOT_A_CONFIDENCE /* autoCommitFirstWordConfidence */));
- }
- }
- return new SuggestedWords(puncList,
- false /* typedWordValid */,
- false /* hasAutoCorrectionCandidate */,
- true /* isPunctuationSuggestions */,
- false /* isObsoleteSuggestions */,
- false /* isPrediction */);
- }
-
- public boolean isWordSeparator(final int code) {
- return mWordSeparators.contains(String.valueOf((char)code));
- }
-
- public boolean isWordConnector(final int code) {
- return Arrays.binarySearch(mWordConnectors, code) >= 0;
- }
-
- public boolean isWordCodePoint(final int code) {
- return Character.isLetter(code) || isWordConnector(code);
- }
-
- public boolean isUsuallyPrecededBySpace(final int code) {
- return Arrays.binarySearch(mSymbolsPrecededBySpace, code) >= 0;
- }
-
- public boolean isUsuallyFollowedBySpace(final int code) {
- return Arrays.binarySearch(mSymbolsFollowedBySpace, code) >= 0;
- }
-
- public boolean isSentenceSeparator(final int code) {
- return code == mSentenceSeparator;
- }
-}