Merge "Remove setting switch for phrase gesture."
diff --git a/common/src/com/android/inputmethod/latin/common/NativeSuggestOptions.java b/common/src/com/android/inputmethod/latin/common/NativeSuggestOptions.java
index db21f11..d673442 100644
--- a/common/src/com/android/inputmethod/latin/common/NativeSuggestOptions.java
+++ b/common/src/com/android/inputmethod/latin/common/NativeSuggestOptions.java
@@ -43,10 +43,6 @@
setBooleanOption(BLOCK_OFFENSIVE_WORDS, value);
}
- public void setSpaceAwareGestureEnabled(final boolean value) {
- setBooleanOption(SPACE_AWARE_GESTURE_ENABLED, value);
- }
-
public void setWeightForLocale(final float value) {
// We're passing this option as a fixed point value, in thousands. This is decoded in
// native code by SuggestOptions#weightForLocale().
diff --git a/java/src/com/android/inputmethod/keyboard/KeyboardLayoutSet.java b/java/src/com/android/inputmethod/keyboard/KeyboardLayoutSet.java
index d71dc59..47013fe 100644
--- a/java/src/com/android/inputmethod/keyboard/KeyboardLayoutSet.java
+++ b/java/src/com/android/inputmethod/keyboard/KeyboardLayoutSet.java
@@ -63,7 +63,7 @@
*/
public final class KeyboardLayoutSet {
private static final String TAG = KeyboardLayoutSet.class.getSimpleName();
- private static final boolean DEBUG_CACHE = DebugFlags.DEBUG_ENABLED;
+ private static final boolean DEBUG_CACHE = false;
private static final String TAG_KEYBOARD_SET = "KeyboardLayoutSet";
private static final String TAG_ELEMENT = "Element";
diff --git a/java/src/com/android/inputmethod/latin/BinaryDictionary.java b/java/src/com/android/inputmethod/latin/BinaryDictionary.java
index 6b2b123..c101551 100644
--- a/java/src/com/android/inputmethod/latin/BinaryDictionary.java
+++ b/java/src/com/android/inputmethod/latin/BinaryDictionary.java
@@ -292,8 +292,6 @@
session.mNativeSuggestOptions.setIsGesture(isGesture);
session.mNativeSuggestOptions.setBlockOffensiveWords(
settingsValuesForSuggestion.mBlockPotentiallyOffensive);
- session.mNativeSuggestOptions.setSpaceAwareGestureEnabled(
- settingsValuesForSuggestion.mSpaceAwareGestureEnabled);
session.mNativeSuggestOptions.setWeightForLocale(weightForLocale);
if (inOutWeightOfLangModelVsSpatialModel != null) {
session.mInputOutputWeightOfLangModelVsSpatialModel[0] =
diff --git a/java/src/com/android/inputmethod/latin/DictionaryFacilitator.java b/java/src/com/android/inputmethod/latin/DictionaryFacilitator.java
index 7e91600..b658889 100644
--- a/java/src/com/android/inputmethod/latin/DictionaryFacilitator.java
+++ b/java/src/com/android/inputmethod/latin/DictionaryFacilitator.java
@@ -89,9 +89,6 @@
void onUpdateMainDictionaryAvailability(boolean isMainDictionaryAvailable);
}
- // TODO: remove this, it's confusing with seamless multiple language switching
- void setIsMonolingualUser(final boolean isMonolingualUser);
-
boolean isActive();
/**
@@ -165,14 +162,10 @@
boolean isValidSuggestionWord(final String word);
- int getFrequency(final String word);
+ void clearUserHistoryDictionary(final Context context);
- int getMaxFrequencyOfExactMatches(final String word);
-
- void clearUserHistoryDictionary();
-
String dump(final Context context);
-
+
void dumpDictionaryForDebug(final String dictName);
ArrayList<Pair<String, DictionaryStats>> getStatsOfEnabledSubDicts();
diff --git a/java/src/com/android/inputmethod/latin/DictionaryFacilitatorImpl.java b/java/src/com/android/inputmethod/latin/DictionaryFacilitatorImpl.java
index 6080900..e0b0b2b 100644
--- a/java/src/com/android/inputmethod/latin/DictionaryFacilitatorImpl.java
+++ b/java/src/com/android/inputmethod/latin/DictionaryFacilitatorImpl.java
@@ -230,10 +230,6 @@
public DictionaryFacilitatorImpl() {
}
- // TODO: remove this, it's confusing with seamless multiple language switching
- public void setIsMonolingualUser(final boolean isMonolingualUser) {
- }
-
public boolean isActive() {
return null != mDictionaryGroups[0].mLocale;
}
@@ -730,8 +726,7 @@
return false;
}
- private int getFrequencyInternal(final String word,
- final boolean isGettingMaxFrequencyOfExactMatches) {
+ private int getFrequency(final String word) {
if (TextUtils.isEmpty(word)) {
return Dictionary.NOT_A_PROBABILITY;
}
@@ -741,12 +736,7 @@
for (final String dictType : ALL_DICTIONARY_TYPES) {
final Dictionary dictionary = dictionaryGroup.getDict(dictType);
if (dictionary == null) continue;
- final int tempFreq;
- if (isGettingMaxFrequencyOfExactMatches) {
- tempFreq = dictionary.getMaxFrequencyOfExactMatches(word);
- } else {
- tempFreq = dictionary.getFrequency(word);
- }
+ final int tempFreq = dictionary.getFrequency(word);
if (tempFreq >= maxFreq) {
maxFreq = tempFreq;
}
@@ -755,16 +745,6 @@
return maxFreq;
}
- @Override
- public int getFrequency(final String word) {
- return getFrequencyInternal(word, false /* isGettingMaxFrequencyOfExactMatches */);
- }
-
- @Override
- public int getMaxFrequencyOfExactMatches(final String word) {
- return getFrequencyInternal(word, true /* isGettingMaxFrequencyOfExactMatches */);
- }
-
private void clearSubDictionary(final String dictName) {
final DictionaryGroup[] dictionaryGroups = mDictionaryGroups;
for (final DictionaryGroup dictionaryGroup : dictionaryGroups) {
@@ -776,7 +756,7 @@
}
@Override
- public void clearUserHistoryDictionary() {
+ public void clearUserHistoryDictionary(final Context context) {
clearSubDictionary(Dictionary.TYPE_USER_HISTORY);
}
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 0f99157..4ae47f3 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -609,19 +609,10 @@
private void refreshPersonalizationDictionarySession(
final SettingsValues currentSettingsValues) {
- // TODO: Remove all existing personalized dictionaries.
- mDictionaryFacilitator.setIsMonolingualUser(
- mRichImm.isSystemLocaleSameAsLocaleOfAllEnabledSubtypesOfEnabledImes());
- final boolean shouldKeepUserHistoryDictionaries;
- if (currentSettingsValues.mUsePersonalizedDicts) {
- shouldKeepUserHistoryDictionaries = true;
- } else {
- shouldKeepUserHistoryDictionaries = false;
- }
- if (!shouldKeepUserHistoryDictionaries) {
+ if (!currentSettingsValues.mUsePersonalizedDicts) {
// Remove user history dictionaries.
PersonalizationHelper.removeAllUserHistoryDictionaries(this);
- mDictionaryFacilitator.clearUserHistoryDictionary();
+ mDictionaryFacilitator.clearUserHistoryDictionary(this);
}
}
@@ -1802,7 +1793,7 @@
// DO NOT USE THIS for any other purpose than testing.
@UsedForTesting
/* package for test */ void clearPersonalizedDictionariesForTest() {
- mDictionaryFacilitator.clearUserHistoryDictionary();
+ mDictionaryFacilitator.clearUserHistoryDictionary(this);
}
@UsedForTesting
diff --git a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
index 934da7a..35486ce 100644
--- a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
+++ b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
@@ -534,29 +534,6 @@
final InputPointers batchPointers,
// TODO: remove these arguments
final KeyboardSwitcher keyboardSwitcher) {
- if (settingsValues.mPhraseGestureEnabled) {
- final SuggestedWordInfo candidate = mSuggestedWords.getAutoCommitCandidate();
- // If these suggested words have been generated with out of date input pointers, then
- // we skip auto-commit (see comments above on the mSequenceNumber member).
- if (null != candidate
- && mSuggestedWords.mSequenceNumber >= mAutoCommitSequenceNumber) {
- if (candidate.mSourceDict.shouldAutoCommit(candidate)) {
- final String[] commitParts = candidate.mWord.split(Constants.WORD_SEPARATOR, 2);
- batchPointers.shift(candidate.mIndexOfTouchPointOfSecondWord);
- if (SpaceState.PHANTOM == mSpaceState) {
- insertAutomaticSpaceIfOptionsAndTextAllow(settingsValues);
- }
- mConnection.commitText(commitParts[0], 0);
- StatsUtils.onWordCommitUserTyped(commitParts[0], mWordComposer.isBatchMode());
- mSpaceState = SpaceState.PHANTOM;
- keyboardSwitcher.requestUpdatingShiftState(
- getCurrentAutoCapsState(settingsValues), getCurrentRecapitalizeState());
- mWordComposer.setCapitalizedModeAtStartComposingTime(getActualCapsMode(
- settingsValues, keyboardSwitcher.getKeyboardShiftMode()));
- ++mAutoCommitSequenceNumber;
- }
- }
- }
mInputLogicHandler.onUpdateBatchInput(batchPointers, mAutoCommitSequenceNumber);
}
@@ -1984,27 +1961,8 @@
if (SpaceState.PHANTOM == mSpaceState) {
insertAutomaticSpaceIfOptionsAndTextAllow(settingsValues);
}
- final SuggestedWordInfo autoCommitCandidate = mSuggestedWords.getAutoCommitCandidate();
- // Commit except the last word for phrase gesture if the top suggestion is eligible for auto
- // commit.
- if (settingsValues.mPhraseGestureEnabled && null != autoCommitCandidate) {
- // Find the last space
- final int indexOfLastSpace = batchInputText.lastIndexOf(Constants.CODE_SPACE) + 1;
- if (0 != indexOfLastSpace) {
- mConnection.commitText(batchInputText.substring(0, indexOfLastSpace), 1);
- StatsUtils.onWordCommitUserTyped(
- batchInputText.substring(0, indexOfLastSpace), mWordComposer.isBatchMode());
- final SuggestedWords suggestedWordsForLastWordOfPhraseGesture =
- suggestedWords.getSuggestedWordsForLastWordOfPhraseGesture();
- mLatinIME.showSuggestionStrip(suggestedWordsForLastWordOfPhraseGesture);
- }
- final String lastWord = batchInputText.substring(indexOfLastSpace);
- mWordComposer.setBatchInputWord(lastWord);
- setComposingTextInternal(lastWord, 1);
- } else {
- mWordComposer.setBatchInputWord(batchInputText);
- setComposingTextInternal(batchInputText, 1);
- }
+ mWordComposer.setBatchInputWord(batchInputText);
+ setComposingTextInternal(batchInputText, 1);
mConnection.endBatchEdit();
// Space state must be updated before calling updateShiftState
mSpaceState = SpaceState.PHANTOM;
@@ -2186,8 +2144,7 @@
// hence 2; if we aren't, we should just skip whitespace if any, so 1.
mWordComposer.isComposingWord() ? 2 : 1),
keyboard,
- new SettingsValuesForSuggestion(settingsValues.mBlockPotentiallyOffensive,
- settingsValues.mPhraseGestureEnabled),
+ new SettingsValuesForSuggestion(settingsValues.mBlockPotentiallyOffensive),
settingsValues.mAutoCorrectionEnabledPerUserSettings,
inputStyle, sequenceNumber, callback);
}
diff --git a/java/src/com/android/inputmethod/latin/settings/Settings.java b/java/src/com/android/inputmethod/latin/settings/Settings.java
index 6ece59d..5596c7f 100644
--- a/java/src/com/android/inputmethod/latin/settings/Settings.java
+++ b/java/src/com/android/inputmethod/latin/settings/Settings.java
@@ -90,7 +90,6 @@
public static final String PREF_GESTURE_PREVIEW_TRAIL = "pref_gesture_preview_trail";
public static final String PREF_GESTURE_FLOATING_PREVIEW_TEXT =
"pref_gesture_floating_preview_text";
- public static final String PREF_PHRASE_GESTURE_ENABLED = "pref_gesture_space_aware";
public static final String PREF_KEY_IS_INTERNAL = "pref_key_is_internal";
@@ -235,12 +234,6 @@
&& prefs.getBoolean(PREF_GESTURE_INPUT, true);
}
- public static boolean readPhraseGestureEnabled(final SharedPreferences prefs,
- final Resources res) {
- return prefs.getBoolean(PREF_PHRASE_GESTURE_ENABLED,
- res.getBoolean(R.bool.config_default_phrase_gesture_enabled));
- }
-
public static boolean readFromBuildConfigIfToShowKeyPreviewPopupOption(final Resources res) {
return res.getBoolean(R.bool.config_enable_show_key_preview_popup_option);
}
diff --git a/java/src/com/android/inputmethod/latin/settings/SettingsValues.java b/java/src/com/android/inputmethod/latin/settings/SettingsValues.java
index 1d6199d..ed11de9 100644
--- a/java/src/com/android/inputmethod/latin/settings/SettingsValues.java
+++ b/java/src/com/android/inputmethod/latin/settings/SettingsValues.java
@@ -77,7 +77,6 @@
public final boolean mGestureTrailEnabled;
public final boolean mGestureFloatingPreviewTextEnabled;
public final boolean mSlidingKeyInputPreviewEnabled;
- public final boolean mPhraseGestureEnabled;
public final int mKeyLongpressTimeout;
public final boolean mEnableEmojiAltPhysicalKey;
public final boolean mEnableMetricsLogging;
@@ -174,7 +173,6 @@
null /* default */);
mGestureFloatingPreviewTextEnabled = !mInputAttributes.mDisableGestureFloatingPreviewText
&& prefs.getBoolean(Settings.PREF_GESTURE_FLOATING_PREVIEW_TEXT, true);
- mPhraseGestureEnabled = Settings.readPhraseGestureEnabled(prefs, res);
mAutoCorrectionEnabledPerUserSettings = mAutoCorrectEnabled
&& !mInputAttributes.mInputTypeNoAutoCorrect;
mSuggestionsEnabledPerUserSettings = readSuggestionsEnabled(prefs);
@@ -389,8 +387,6 @@
sb.append("" + mGestureFloatingPreviewTextEnabled);
sb.append("\n mSlidingKeyInputPreviewEnabled = ");
sb.append("" + mSlidingKeyInputPreviewEnabled);
- sb.append("\n mPhraseGestureEnabled = ");
- sb.append("" + mPhraseGestureEnabled);
sb.append("\n mKeyLongpressTimeout = ");
sb.append("" + mKeyLongpressTimeout);
sb.append("\n mLocale = ");
diff --git a/java/src/com/android/inputmethod/latin/settings/SettingsValuesForSuggestion.java b/java/src/com/android/inputmethod/latin/settings/SettingsValuesForSuggestion.java
index 56e6fac..5e2e5a5 100644
--- a/java/src/com/android/inputmethod/latin/settings/SettingsValuesForSuggestion.java
+++ b/java/src/com/android/inputmethod/latin/settings/SettingsValuesForSuggestion.java
@@ -18,11 +18,8 @@
public class SettingsValuesForSuggestion {
public final boolean mBlockPotentiallyOffensive;
- public final boolean mSpaceAwareGestureEnabled;
- public SettingsValuesForSuggestion(final boolean blockPotentiallyOffensive,
- final boolean spaceAwareGestureEnabled) {
+ public SettingsValuesForSuggestion(final boolean blockPotentiallyOffensive) {
mBlockPotentiallyOffensive = blockPotentiallyOffensive;
- mSpaceAwareGestureEnabled = spaceAwareGestureEnabled;
}
}
diff --git a/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerService.java b/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerService.java
index ff0578d..f524441 100644
--- a/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerService.java
+++ b/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerService.java
@@ -79,8 +79,7 @@
private float mRecommendedThreshold;
// TODO: make a spell checker option to block offensive words or not
private final SettingsValuesForSuggestion mSettingsValuesForSuggestion =
- new SettingsValuesForSuggestion(true /* blockPotentiallyOffensive */,
- true /* spaceAwareGestureEnabled */);
+ new SettingsValuesForSuggestion(true /* blockPotentiallyOffensive */);
public static final String SINGLE_QUOTE = "\u0027";
public static final String APOSTROPHE = "\u2019";
diff --git a/java/src/com/android/inputmethod/latin/utils/ExecutorUtils.java b/java/src/com/android/inputmethod/latin/utils/ExecutorUtils.java
index 9171468..a784461 100644
--- a/java/src/com/android/inputmethod/latin/utils/ExecutorUtils.java
+++ b/java/src/com/android/inputmethod/latin/utils/ExecutorUtils.java
@@ -85,11 +85,13 @@
}
}
+ @UsedForTesting
public static Runnable chain(final Runnable... runnables) {
return new RunnableChain(runnables);
}
- private static class RunnableChain implements Runnable {
+ @UsedForTesting
+ public static class RunnableChain implements Runnable {
private final Runnable[] mRunnables;
private RunnableChain(final Runnable... runnables) {
@@ -99,6 +101,11 @@
mRunnables = runnables;
}
+ @UsedForTesting
+ public Runnable[] getRunnables() {
+ return mRunnables;
+ }
+
@Override
public void run() {
for (Runnable runnable : mRunnables) {