summaryrefslogtreecommitdiff
path: root/src/com/android/dialer/dialpad/SmartDialCache.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/dialer/dialpad/SmartDialCache.java')
-rw-r--r--src/com/android/dialer/dialpad/SmartDialCache.java16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/com/android/dialer/dialpad/SmartDialCache.java b/src/com/android/dialer/dialpad/SmartDialCache.java
index 3294bfbb6..3d4a563af 100644
--- a/src/com/android/dialer/dialpad/SmartDialCache.java
+++ b/src/com/android/dialer/dialpad/SmartDialCache.java
@@ -144,6 +144,7 @@ public class SmartDialCache {
private SmartDialTrie mContactsCache;
private static AtomicInteger mCacheStatus;
+ private final SmartDialMap mMap;
private final int mNameDisplayOrder;
private final Context mContext;
private final static Object mLock = new Object();
@@ -162,8 +163,9 @@ public class SmartDialCache {
private static final boolean DEBUG = false;
- private SmartDialCache(Context context, int nameDisplayOrder) {
+ private SmartDialCache(Context context, int nameDisplayOrder, SmartDialMap map) {
mNameDisplayOrder = nameDisplayOrder;
+ mMap = map;
Preconditions.checkNotNull(context, "Context must not be null");
mContext = context.getApplicationContext();
mCacheStatus = new AtomicInteger(CACHE_NEEDS_RECACHE);
@@ -201,9 +203,10 @@ public class SmartDialCache {
* {@link android.provider.ContactsContract.Preferences#DISPLAY_ORDER}.
* @return An instance of SmartDialCache
*/
- public static synchronized SmartDialCache getInstance(Context context, int nameDisplayOrder) {
+ public static synchronized SmartDialCache getInstance(Context context, int nameDisplayOrder,
+ SmartDialMap map) {
if (instance == null) {
- instance = new SmartDialCache(context, nameDisplayOrder);
+ instance = new SmartDialCache(context, nameDisplayOrder, map);
}
return instance;
}
@@ -236,8 +239,7 @@ public class SmartDialCache {
mCacheStatus.getAndSet(CACHE_NEEDS_RECACHE);
return;
}
- final SmartDialTrie cache = new SmartDialTrie(
- SmartDialNameMatcher.LATIN_LETTERS_TO_DIGITS, sUserInNanpRegion);
+ final SmartDialTrie cache = new SmartDialTrie(mMap, sUserInNanpRegion);
try {
c.moveToPosition(-1);
int affinityCount = 0;
@@ -350,6 +352,10 @@ public class SmartDialCache {
}
+ public SmartDialMap getMap() {
+ return mMap;
+ }
+
public boolean getUserInNanpRegion() {
return sUserInNanpRegion;
}