am 516c884b: Merge "Prepare to implement distracter filter"
* commit '516c884b115f2cce1fca9a1599782ccfc433ca1f': Prepare to implement distracter filtermain
commit
1efec72e0b
|
@ -510,7 +510,6 @@ public class DictionaryFacilitatorForSuggest {
|
||||||
return maxFreq;
|
return maxFreq;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void clearUserHistoryDictionary() {
|
public void clearUserHistoryDictionary() {
|
||||||
final ExpandableBinaryDictionary userHistoryDict =
|
final ExpandableBinaryDictionary userHistoryDict =
|
||||||
mDictionaries.getSubDict(Dictionary.TYPE_USER_HISTORY);
|
mDictionaries.getSubDict(Dictionary.TYPE_USER_HISTORY);
|
||||||
|
|
|
@ -84,6 +84,7 @@ import com.android.inputmethod.latin.utils.ApplicationUtils;
|
||||||
import com.android.inputmethod.latin.utils.CapsModeUtils;
|
import com.android.inputmethod.latin.utils.CapsModeUtils;
|
||||||
import com.android.inputmethod.latin.utils.CoordinateUtils;
|
import com.android.inputmethod.latin.utils.CoordinateUtils;
|
||||||
import com.android.inputmethod.latin.utils.DialogUtils;
|
import com.android.inputmethod.latin.utils.DialogUtils;
|
||||||
|
import com.android.inputmethod.latin.utils.DistracterFilter;
|
||||||
import com.android.inputmethod.latin.utils.ImportantNoticeUtils;
|
import com.android.inputmethod.latin.utils.ImportantNoticeUtils;
|
||||||
import com.android.inputmethod.latin.utils.IntentUtils;
|
import com.android.inputmethod.latin.utils.IntentUtils;
|
||||||
import com.android.inputmethod.latin.utils.JniUtils;
|
import com.android.inputmethod.latin.utils.JniUtils;
|
||||||
|
@ -540,6 +541,14 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||||
refreshPersonalizationDictionarySession();
|
refreshPersonalizationDictionarySession();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private DistracterFilter createDistracterFilter() {
|
||||||
|
final MainKeyboardView mainKeyboardView = mKeyboardSwitcher.getMainKeyboardView();
|
||||||
|
final Keyboard keyboard = mainKeyboardView.getKeyboard();
|
||||||
|
final DistracterFilter distracterFilter = new DistracterFilter(mInputLogic.mSuggest,
|
||||||
|
keyboard);
|
||||||
|
return distracterFilter;
|
||||||
|
}
|
||||||
|
|
||||||
private void refreshPersonalizationDictionarySession() {
|
private void refreshPersonalizationDictionarySession() {
|
||||||
final DictionaryFacilitatorForSuggest dictionaryFacilitator =
|
final DictionaryFacilitatorForSuggest dictionaryFacilitator =
|
||||||
mInputLogic.mSuggest.mDictionaryFacilitator;
|
mInputLogic.mSuggest.mDictionaryFacilitator;
|
||||||
|
@ -564,7 +573,9 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||||
PersonalizationHelper.removeAllPersonalizationDictionaries(this);
|
PersonalizationHelper.removeAllPersonalizationDictionaries(this);
|
||||||
PersonalizationDictionarySessionRegistrar.resetAll(this);
|
PersonalizationDictionarySessionRegistrar.resetAll(this);
|
||||||
} else {
|
} else {
|
||||||
PersonalizationDictionarySessionRegistrar.init(this, dictionaryFacilitator);
|
final DistracterFilter distracterFilter = createDistracterFilter();
|
||||||
|
PersonalizationDictionarySessionRegistrar.init(
|
||||||
|
this, dictionaryFacilitator, distracterFilter);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -662,8 +673,9 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||||
mInputLogic.mConnection.finishComposingText();
|
mInputLogic.mConnection.finishComposingText();
|
||||||
mInputLogic.mConnection.endBatchEdit();
|
mInputLogic.mConnection.endBatchEdit();
|
||||||
}
|
}
|
||||||
|
final DistracterFilter distracterFilter = createDistracterFilter();
|
||||||
PersonalizationDictionarySessionRegistrar.onConfigurationChanged(this, conf,
|
PersonalizationDictionarySessionRegistrar.onConfigurationChanged(this, conf,
|
||||||
mInputLogic.mSuggest.mDictionaryFacilitator);
|
mInputLogic.mSuggest.mDictionaryFacilitator, distracterFilter);
|
||||||
super.onConfigurationChanged(conf);
|
super.onConfigurationChanged(conf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -20,14 +20,17 @@ import android.content.Context;
|
||||||
import android.content.res.Configuration;
|
import android.content.res.Configuration;
|
||||||
|
|
||||||
import com.android.inputmethod.latin.DictionaryFacilitatorForSuggest;
|
import com.android.inputmethod.latin.DictionaryFacilitatorForSuggest;
|
||||||
|
import com.android.inputmethod.latin.utils.DistracterFilter;
|
||||||
|
|
||||||
public class PersonalizationDictionarySessionRegistrar {
|
public class PersonalizationDictionarySessionRegistrar {
|
||||||
public static void init(final Context context,
|
public static void init(final Context context,
|
||||||
final DictionaryFacilitatorForSuggest dictionaryFacilitator) {
|
final DictionaryFacilitatorForSuggest dictionaryFacilitator,
|
||||||
|
final DistracterFilter distracterFilter) {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void onConfigurationChanged(final Context context, final Configuration conf,
|
public static void onConfigurationChanged(final Context context, final Configuration conf,
|
||||||
final DictionaryFacilitatorForSuggest dictionaryFacilitator) {
|
final DictionaryFacilitatorForSuggest dictionaryFacilitator,
|
||||||
|
final DistracterFilter distracterFilter) {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void onUpdateData(final Context context, final String type) {
|
public static void onUpdateData(final Context context, final String type) {
|
||||||
|
|
|
@ -0,0 +1,48 @@
|
||||||
|
/*
|
||||||
|
* 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.utils;
|
||||||
|
|
||||||
|
import com.android.inputmethod.keyboard.Keyboard;
|
||||||
|
import com.android.inputmethod.latin.Suggest;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class is used to prevent distracters/misspellings being added to personalization
|
||||||
|
* or user history dictionaries
|
||||||
|
*/
|
||||||
|
public class DistracterFilter {
|
||||||
|
private final Suggest mSuggest;
|
||||||
|
private final Keyboard mKeyboard;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a DistracterFilter instance.
|
||||||
|
*
|
||||||
|
* @param suggest an instance of Suggest which will be used to obtain a list of suggestions
|
||||||
|
* for a potential distracter/misspelling
|
||||||
|
* @param keyboard the keyboard that is currently being used. This information is needed
|
||||||
|
* when calling mSuggest.getSuggestedWords(...) to obtain a list of suggestions.
|
||||||
|
*/
|
||||||
|
public DistracterFilter(final Suggest suggest, final Keyboard keyboard) {
|
||||||
|
mSuggest = suggest;
|
||||||
|
mKeyboard = keyboard;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isDistractorToWordsInDictionaries(final String prevWord,
|
||||||
|
final String targetWord) {
|
||||||
|
// TODO: to be implemented
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue