aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAndroid (Google) Code Review <android-gerrit@google.com>2009-10-08 17:33:59 -0400
committerAndroid (Google) Code Review <android-gerrit@google.com>2009-10-08 17:33:59 -0400
commitb7a94fd7d66ad2cb73ed6c7226de5535935ab8b0 (patch)
treebbbc891d901579846fb6aee73c5da7939bc2f883 /src
parent75e5091ceacb201b9a1c81cab21f357bd2e91f17 (diff)
parentb3f6d58b6ec716c26df38b584eda061265437cf4 (diff)
downloadlatinime-b7a94fd7d66ad2cb73ed6c7226de5535935ab8b0.tar.gz
latinime-b7a94fd7d66ad2cb73ed6c7226de5535935ab8b0.tar.xz
latinime-b7a94fd7d66ad2cb73ed6c7226de5535935ab8b0.zip
Merge change Ib3f6d58b into eclair
* changes: Fix for 2148982: Keyboard freezes while typing
Diffstat (limited to 'src')
-rw-r--r--src/com/android/inputmethod/latin/ContactsDictionary.java22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/com/android/inputmethod/latin/ContactsDictionary.java b/src/com/android/inputmethod/latin/ContactsDictionary.java
index e8faf45a1..6f7f4b6a4 100644
--- a/src/com/android/inputmethod/latin/ContactsDictionary.java
+++ b/src/com/android/inputmethod/latin/ContactsDictionary.java
@@ -16,16 +16,11 @@
package com.android.inputmethod.latin;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Locale;
-
import android.content.ContentResolver;
import android.content.Context;
import android.database.ContentObserver;
import android.database.Cursor;
import android.provider.ContactsContract.Contacts;
-import android.util.Log;
public class ContactsDictionary extends ExpandableDictionary {
@@ -40,6 +35,8 @@ public class ContactsDictionary extends ExpandableDictionary {
private boolean mRequiresReload;
+ private long mLastLoadedContacts;
+
public ContactsDictionary(Context context) {
super(context);
// Perform a managed query. The Activity will handle closing and requerying the cursor
@@ -64,12 +61,17 @@ public class ContactsDictionary extends ExpandableDictionary {
}
private synchronized void loadDictionary() {
- Cursor cursor = getContext().getContentResolver()
- .query(Contacts.CONTENT_URI, PROJECTION, null, null, null);
- if (cursor != null) {
- addWords(cursor);
+ long now = android.os.SystemClock.uptimeMillis();
+ if (mLastLoadedContacts == 0
+ || now - mLastLoadedContacts > 30 * 60 * 1000 /* 30 minutes */) {
+ Cursor cursor = getContext().getContentResolver()
+ .query(Contacts.CONTENT_URI, PROJECTION, null, null, null);
+ if (cursor != null) {
+ addWords(cursor);
+ }
+ mRequiresReload = false;
+ mLastLoadedContacts = now;
}
- mRequiresReload = false;
}
@Override