aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/DictionaryFacilitator.java
diff options
context:
space:
mode:
authorAmin Bandali <bandali@kelar.org>2024-12-16 21:45:41 -0500
committerAmin Bandali <bandali@kelar.org>2025-01-11 14:17:35 -0500
commite9a0e66716dab4dd3184d009d8920de1961efdfa (patch)
tree02dcc096643d74645bf28459c2834c3d4a2ad7f2 /java/src/com/android/inputmethod/latin/DictionaryFacilitator.java
parentfb3b9360d70596d7e921de8bf7d3ca99564a077e (diff)
downloadlatinime-e9a0e66716dab4dd3184d009d8920de1961efdfa.tar.gz
latinime-e9a0e66716dab4dd3184d009d8920de1961efdfa.tar.xz
latinime-e9a0e66716dab4dd3184d009d8920de1961efdfa.zip
Rename to Kelar Keyboard (org.kelar.inputmethod.latin)
Diffstat (limited to 'java/src/com/android/inputmethod/latin/DictionaryFacilitator.java')
-rw-r--r--java/src/com/android/inputmethod/latin/DictionaryFacilitator.java176
1 files changed, 0 insertions, 176 deletions
diff --git a/java/src/com/android/inputmethod/latin/DictionaryFacilitator.java b/java/src/com/android/inputmethod/latin/DictionaryFacilitator.java
deleted file mode 100644
index 02015da09..000000000
--- a/java/src/com/android/inputmethod/latin/DictionaryFacilitator.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*
- * Copyright (C) 2013 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;
-
-import android.content.Context;
-import android.util.LruCache;
-
-import com.android.inputmethod.annotations.UsedForTesting;
-import com.android.inputmethod.keyboard.Keyboard;
-import com.android.inputmethod.latin.common.ComposedData;
-import com.android.inputmethod.latin.settings.SettingsValuesForSuggestion;
-import com.android.inputmethod.latin.utils.SuggestionResults;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-import java.util.concurrent.TimeUnit;
-
-import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
-
-/**
- * Interface that facilitates interaction with different kinds of dictionaries. Provides APIs to
- * instantiate and select the correct dictionaries (based on language or account), update entries
- * and fetch suggestions. Currently AndroidSpellCheckerService and LatinIME both use
- * DictionaryFacilitator as a client for interacting with dictionaries.
- */
-public interface DictionaryFacilitator {
-
- public static final String[] ALL_DICTIONARY_TYPES = new String[] {
- Dictionary.TYPE_MAIN,
- Dictionary.TYPE_CONTACTS,
- Dictionary.TYPE_USER_HISTORY,
- Dictionary.TYPE_USER};
-
- public static final String[] DYNAMIC_DICTIONARY_TYPES = new String[] {
- Dictionary.TYPE_CONTACTS,
- Dictionary.TYPE_USER_HISTORY,
- Dictionary.TYPE_USER};
-
- /**
- * The facilitator will put words into the cache whenever it decodes them.
- * @param cache
- */
- void setValidSpellingWordReadCache(final LruCache<String, Boolean> cache);
-
- /**
- * The facilitator will get words from the cache whenever it needs to check their spelling.
- * @param cache
- */
- void setValidSpellingWordWriteCache(final LruCache<String, Boolean> cache);
-
- /**
- * Returns whether this facilitator is exactly for this locale.
- *
- * @param locale the locale to test against
- */
- boolean isForLocale(final Locale locale);
-
- /**
- * Returns whether this facilitator is exactly for this account.
- *
- * @param account the account to test against.
- */
- boolean isForAccount(@Nullable final String account);
-
- interface DictionaryInitializationListener {
- void onUpdateMainDictionaryAvailability(boolean isMainDictionaryAvailable);
- }
-
- /**
- * Called every time {@link LatinIME} starts on a new text field.
- * Dot not affect {@link AndroidSpellCheckerService}.
- *
- * WARNING: The service methods that call start/finish are very spammy.
- */
- void onStartInput();
-
- /**
- * Called every time the {@link LatinIME} finishes with the current text field.
- * May be followed by {@link #onStartInput} again in another text field,
- * or it may be done for a while.
- * Dot not affect {@link AndroidSpellCheckerService}.
- *
- * WARNING: The service methods that call start/finish are very spammy.
- */
- void onFinishInput(Context context);
-
- boolean isActive();
-
- Locale getLocale();
-
- boolean usesContacts();
-
- String getAccount();
-
- void resetDictionaries(
- final Context context,
- final Locale newLocale,
- final boolean useContactsDict,
- final boolean usePersonalizedDicts,
- final boolean forceReloadMainDictionary,
- @Nullable final String account,
- final String dictNamePrefix,
- @Nullable final DictionaryInitializationListener listener);
-
- @UsedForTesting
- void resetDictionariesForTesting(
- final Context context,
- final Locale locale,
- final ArrayList<String> dictionaryTypes,
- final HashMap<String, File> dictionaryFiles,
- final Map<String, Map<String, String>> additionalDictAttributes,
- @Nullable final String account);
-
- void closeDictionaries();
-
- @UsedForTesting
- ExpandableBinaryDictionary getSubDictForTesting(final String dictName);
-
- // The main dictionaries are loaded asynchronously. Don't cache the return value
- // of these methods.
- boolean hasAtLeastOneInitializedMainDictionary();
-
- boolean hasAtLeastOneUninitializedMainDictionary();
-
- void waitForLoadingMainDictionaries(final long timeout, final TimeUnit unit)
- throws InterruptedException;
-
- @UsedForTesting
- void waitForLoadingDictionariesForTesting(final long timeout, final TimeUnit unit)
- throws InterruptedException;
-
- void addToUserHistory(final String suggestion, final boolean wasAutoCapitalized,
- @Nonnull final NgramContext ngramContext, final long timeStampInSeconds,
- final boolean blockPotentiallyOffensive);
-
- void unlearnFromUserHistory(final String word,
- @Nonnull final NgramContext ngramContext, final long timeStampInSeconds,
- final int eventType);
-
- // TODO: Revise the way to fusion suggestion results.
- @Nonnull SuggestionResults getSuggestionResults(final ComposedData composedData,
- final NgramContext ngramContext, @Nonnull final Keyboard keyboard,
- final SettingsValuesForSuggestion settingsValuesForSuggestion, final int sessionId,
- final int inputStyle);
-
- boolean isValidSpellingWord(final String word);
-
- boolean isValidSuggestionWord(final String word);
-
- boolean clearUserHistoryDictionary(final Context context);
-
- String dump(final Context context);
-
- void dumpDictionaryForDebug(final String dictName);
-
- @Nonnull List<DictionaryStats> getDictionaryStats(final Context context);
-}