diff options
Diffstat (limited to 'InCallUI/src/com/android/incallui/ContactInfoCache.java')
-rw-r--r-- | InCallUI/src/com/android/incallui/ContactInfoCache.java | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/InCallUI/src/com/android/incallui/ContactInfoCache.java b/InCallUI/src/com/android/incallui/ContactInfoCache.java index 0e6a3d4e0..e3457d5cb 100644 --- a/InCallUI/src/com/android/incallui/ContactInfoCache.java +++ b/InCallUI/src/com/android/incallui/ContactInfoCache.java @@ -30,6 +30,7 @@ import android.provider.ContactsContract.DisplayNameSources; import android.provider.ContactsContract.CommonDataKinds.Phone; import android.telecom.TelecomManager; import android.text.TextUtils; +import android.util.Pair; import com.android.contacts.common.util.PhoneNumberHelper; import com.android.dialer.calllog.ContactInfo; @@ -299,10 +300,11 @@ public class ContactInfoCache implements ContactsAsyncHelper.OnImageLoadComplete entry.photo = mContext.getResources().getDrawable(R.drawable.img_business); } - String address = null; + boolean hasContactInteractions = false; if (mContactUtils != null) { - // This method will callback "onAddressDetailsFound". - address = mContactUtils.getAddressFromLookupKey(info.getLookupKey(), this); + // This method will callback "onContactInteractionsFound". + hasContactInteractions = mContactUtils.retrieveContactInteractionsFromLookupKey( + info.getLookupKey(), this); } // Add the contact info to the cache. @@ -310,7 +312,7 @@ public class ContactInfoCache implements ContactsAsyncHelper.OnImageLoadComplete sendInfoNotifications(mCallId, entry); // If there is no image then we should not expect another callback. - if (info.getImageUrl() == null && address == null) { + if (info.getImageUrl() == null && !hasContactInteractions) { // We're done, so clear callbacks clearCallbacks(mCallId); } @@ -322,9 +324,10 @@ public class ContactInfoCache implements ContactsAsyncHelper.OnImageLoadComplete } @Override - public void onAddressDetailsFound(Address address) { + public void onContactInteractionsFound(Address address, Pair<String, String> openingHours) { final ContactCacheEntry entry = mInfoMap.get(mCallId); entry.locationAddress = address; + entry.openingHours = openingHours; sendContactInteractionsNotifications(mCallId, entry); clearCallbacks(mCallId); } @@ -614,6 +617,7 @@ public class ContactInfoCache implements ContactsAsyncHelper.OnImageLoadComplete public Uri lookupUri; // Sent to NotificationMananger public String lookupKey; public Address locationAddress; + public Pair<String, String> openingHours; public int contactLookupResult = LogState.LOOKUP_NOT_FOUND; @Override @@ -628,6 +632,7 @@ public class ContactInfoCache implements ContactsAsyncHelper.OnImageLoadComplete .add("contactUri", contactUri) .add("displayPhotoUri", displayPhotoUri) .add("locationAddress", locationAddress) + .add("openingHours", openingHours) .add("contactLookupResult", contactLookupResult) .toString(); } |