Implement multi-SIM capabilities (4/6) [DO NOT MERGE]
Bug:16292368
Change-Id: I24de420bcba2215b70a3faacd858fe848388a31e
(cherry picked from commit e01f3db6e2bf865790c6849b594eb0472918ca8d)
diff --git a/InCallUI/src/com/android/incallui/CallCardPresenter.java b/InCallUI/src/com/android/incallui/CallCardPresenter.java
index 9993ffb..552998e 100644
--- a/InCallUI/src/com/android/incallui/CallCardPresenter.java
+++ b/InCallUI/src/com/android/incallui/CallCardPresenter.java
@@ -23,6 +23,7 @@
import android.telecomm.CallCapabilities;
import android.telecomm.CallServiceDescriptor;
import android.telecomm.PhoneAccount;
+import android.telecomm.TelecommManager;
import android.telephony.DisconnectCause;
import android.text.TextUtils;
import android.text.format.DateUtils;
@@ -54,6 +55,7 @@
private ContactCacheEntry mSecondaryContactInfo;
private CallTimer mCallTimer;
private Context mContext;
+ private TelecommManager mTelecommManager;
public CallCardPresenter() {
// create the call timer
@@ -405,7 +407,8 @@
private Drawable getConnectionIcon() {
PhoneAccount account = mPrimary.getAccount();
if (account != null) {
- return account.getIcon(mContext);
+ return getTelecommManager().getPhoneAccountMetadata(account)
+ .getIcon(mContext);
}
return null;
}
@@ -429,7 +432,7 @@
}
PhoneAccount account = mPrimary.getAccount();
if (account != null) {
- return account.getLabel(mContext);
+ return getTelecommManager().getPhoneAccountMetadata(account).getLabel();
}
return null;
}
@@ -437,7 +440,7 @@
private String getSecondaryCallProviderLabel() {
PhoneAccount account = mSecondary.getAccount();
if (account != null) {
- return account.getLabel(mContext);
+ return getTelecommManager().getPhoneAccountMetadata(account).getLabel();
}
return null;
}
@@ -445,7 +448,8 @@
private Drawable getSecondaryCallProviderIcon() {
PhoneAccount account = mSecondary.getAccount();
if (account != null) {
- return account.getIcon(mContext);
+ return getTelecommManager().getPhoneAccountMetadata(account)
+ .getIcon(mContext);
}
return null;
}
@@ -520,4 +524,11 @@
void setPrimaryLabel(String label);
void setEndCallButtonEnabled(boolean enabled);
}
+
+ private TelecommManager getTelecommManager() {
+ if (mTelecommManager == null) {
+ mTelecommManager = TelecommManager.from(mContext);
+ }
+ return mTelecommManager;
+ }
}