From 169e0feb209a893a8f69c4c2f54fb753d7692831 Mon Sep 17 00:00:00 2001 From: Helium314 Date: Sun, 10 Sep 2023 13:50:10 +0200 Subject: [PATCH] less additions to personal dictionary if language is not clear enough --- .../inputmethod/latin/DictionaryFacilitatorImpl.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/dslul/openboard/inputmethod/latin/DictionaryFacilitatorImpl.java b/app/src/main/java/org/dslul/openboard/inputmethod/latin/DictionaryFacilitatorImpl.java index f5a4490c4..0e667cd47 100644 --- a/app/src/main/java/org/dslul/openboard/inputmethod/latin/DictionaryFacilitatorImpl.java +++ b/app/src/main/java/org/dslul/openboard/inputmethod/latin/DictionaryFacilitatorImpl.java @@ -674,7 +674,10 @@ public class DictionaryFacilitatorImpl implements DictionaryFacilitator { private void addToPersonalDictionaryIfInvalidButInHistory(String suggestion, boolean[] validWordForDictionary) { // we need one clearly preferred group to assign it to the correct language int highestGroup = -1; - int highestGroupConfidence = -1; + // require confidence to be MAX_CONFIDENCE, to be sure about language + // since the word is unknown, confidence has already been reduced, but after a first miss + // confidence is actually reduced to MAX_CONFIDENCE if it was larger + int highestGroupConfidence = DictionaryGroup.MAX_CONFIDENCE - 1; for (int i = 0; i < mDictionaryGroups.size(); i ++) { final DictionaryGroup dictionaryGroup = mDictionaryGroups.get(i); if (dictionaryGroup.mConfidence > highestGroupConfidence) {