Merge "Add a way to know externally if we're installing a new dict"

main
Jean Chalard 2013-01-31 00:19:23 +00:00 committed by Android (Google) Code Review
commit 3c67f6a2d0
2 changed files with 11 additions and 2 deletions

View File

@ -57,6 +57,8 @@ public final class Suggest {
private ContactsBinaryDictionary mContactsDict;
private final ConcurrentHashMap<String, Dictionary> mDictionaries =
CollectionUtils.newConcurrentHashMap();
@UsedForTesting
private boolean mIsCurrentlyWaitingForMainDictionary = false;
public static final int MAX_SUGGESTIONS = 18;
@ -98,6 +100,7 @@ public final class Suggest {
public void resetMainDict(final Context context, final Locale locale,
final SuggestInitializationListener listener) {
mIsCurrentlyWaitingForMainDictionary = true;
mMainDictionary = null;
if (listener != null) {
listener.onUpdateMainDictionaryAvailability(hasMainDictionary());
@ -112,6 +115,7 @@ public final class Suggest {
if (listener != null) {
listener.onUpdateMainDictionaryAvailability(hasMainDictionary());
}
mIsCurrentlyWaitingForMainDictionary = false;
}
}.start();
}
@ -122,6 +126,11 @@ public final class Suggest {
return null != mMainDictionary && mMainDictionary.isInitialized();
}
@UsedForTesting
public boolean isCurrentlyWaitingForMainDictionary() {
return mIsCurrentlyWaitingForMainDictionary;
}
public Dictionary getMainDictionary() {
return mMainDictionary;
}

View File

@ -231,8 +231,8 @@ public class InputTestsBase extends ServiceTestCase<LatinIME> {
}
protected void waitForDictionaryToBeLoaded() {
int remainingAttempts = 10;
while (remainingAttempts > 0 && !mLatinIME.mSuggest.hasMainDictionary()) {
int remainingAttempts = 300;
while (remainingAttempts > 0 && mLatinIME.mSuggest.isCurrentlyWaitingForMainDictionary()) {
try {
Thread.sleep(200);
} catch (InterruptedException e) {