mirror of
https://gitlab.futo.org/keyboard/latinime.git
synced 2024-09-28 14:54:30 +01:00
Merge "Update personalized dict only when single subtype is used."
This commit is contained in:
commit
8a2537e0ae
@ -523,7 +523,11 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||
suggest.close();
|
||||
}
|
||||
if (currentSettingsValues.mUsePersonalizedDicts) {
|
||||
if (mSubtypeSwitcher.isSystemLocaleSameAsLocaleOfAllEnabledSubtypes()) {
|
||||
PersonalizationDictionarySessionRegistrar.init(this);
|
||||
} else {
|
||||
PersonalizationDictionarySessionRegistrar.close(this);
|
||||
}
|
||||
} else {
|
||||
PersonalizationHelper.removeAllPersonalizedDictionaries(this);
|
||||
PersonalizationDictionarySessionRegistrar.resetAll(this);
|
||||
@ -595,7 +599,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||
ResearchLogger.getInstance().onDestroy();
|
||||
}
|
||||
unregisterReceiver(mDictionaryPackInstallReceiver);
|
||||
PersonalizationDictionarySessionRegistrar.onDestroy(this);
|
||||
PersonalizationDictionarySessionRegistrar.close(this);
|
||||
LatinImeLogger.commit();
|
||||
LatinImeLogger.onDestroy();
|
||||
super.onDestroy();
|
||||
|
@ -273,6 +273,18 @@ public final class SubtypeSwitcher {
|
||||
return mNeedsToDisplayLanguage.getValue();
|
||||
}
|
||||
|
||||
public boolean isSystemLocaleSameAsLocaleOfAllEnabledSubtypes() {
|
||||
final Locale systemLocale = mResources.getConfiguration().locale;
|
||||
final List<InputMethodSubtype> enabledSubtypesOfThisIme =
|
||||
mRichImm.getMyEnabledInputMethodSubtypeList(true);
|
||||
for (final InputMethodSubtype subtype : enabledSubtypesOfThisIme) {
|
||||
if (!systemLocale.equals(SubtypeLocaleUtils.getSubtypeLocale(subtype))) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
private static InputMethodSubtype sForcedSubtypeForTesting = null;
|
||||
@UsedForTesting
|
||||
void forceSubtype(final InputMethodSubtype subtype) {
|
||||
|
@ -35,6 +35,6 @@ public class PersonalizationDictionarySessionRegistrar {
|
||||
public static void resetAll(final Context context) {
|
||||
}
|
||||
|
||||
public static void onDestroy(final Context context) {
|
||||
public static void close(final Context context) {
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user