From 0ee3b694833df5488900f521adbd818a6a2e90a5 Mon Sep 17 00:00:00 2001 From: Jean Chalard Date: Tue, 23 Aug 2011 17:55:46 +0900 Subject: [PATCH] Fix an excessive fallback problem. LatinIME has several fallbacks to ensure a dictionary is used. However, it should now be possible to deactivate the main dictionary through the dictionary pack settings. In this case, Latin IME should not fallback to the built-in dictionary. Change-Id: Ibd992ad89793169f04a968b40781fce819b87b6f --- .../inputmethod/latin/DictionaryFactory.java | 22 ++++--------------- 1 file changed, 4 insertions(+), 18 deletions(-) diff --git a/java/src/com/android/inputmethod/latin/DictionaryFactory.java b/java/src/com/android/inputmethod/latin/DictionaryFactory.java index ffd204dac..9642151d7 100644 --- a/java/src/com/android/inputmethod/latin/DictionaryFactory.java +++ b/java/src/com/android/inputmethod/latin/DictionaryFactory.java @@ -64,24 +64,10 @@ public class DictionaryFactory { } } - // null == dictList is not supposed to be possible, but better safe than sorry and it's - // safer for future extension. In this case, rather than returning null, it should be safer - // to return an empty DictionaryCollection. - if (null == dictList) { - return new DictionaryCollection(); - } else { - if (dictList.isEmpty()) { - // The list may be empty if no dictionaries have been added. The getter should not - // return an empty list, but if it does we end up here. Likewise, if the files - // we found could not be opened by the native code for any reason (format mismatch, - // file too big to fit in memory, etc) then we could have an empty list. In this - // case we want to fall back on the resource. - return new DictionaryCollection(createBinaryDictionary(context, fallbackResId, - locale)); - } else { - return new DictionaryCollection(dictList); - } - } + // If the list is empty, that means we should not use any dictionary (for example, the user + // explicitly disabled the main dictionary), so the following is okay. dictList is never + // null, but if for some reason it is, DictionaryCollection handles it gracefully. + return new DictionaryCollection(dictList); } /**