summaryrefslogtreecommitdiff
path: root/InCallUI/src/com/android/incallui
diff options
context:
space:
mode:
authorAndrew Lee <anwlee@google.com>2015-04-10 13:01:13 -0700
committerAndrew Lee <anwlee@google.com>2015-04-20 14:42:38 -0700
commit89aad4adce9cc66294f15391fa3e10f3123d3d92 (patch)
tree3b03d2738c47784874699778dbe128f00fad1c8f /InCallUI/src/com/android/incallui
parentcb687e7d20c2633d65f22a961e7080ea5692e554 (diff)
Add EmergencyCallListener.
+ Add EmergencyCallListener, which fires when the call card is updated to indicate whether the call is an emergency call or not. Bug: 20300758 Change-Id: Ie9ad6ddecb278b56226804f5009504b4cc8b4cd5
Diffstat (limited to 'InCallUI/src/com/android/incallui')
-rw-r--r--InCallUI/src/com/android/incallui/CallCardPresenter.java12
-rw-r--r--InCallUI/src/com/android/incallui/ContactInfoCache.java4
2 files changed, 14 insertions, 2 deletions
diff --git a/InCallUI/src/com/android/incallui/CallCardPresenter.java b/InCallUI/src/com/android/incallui/CallCardPresenter.java
index 535ba3bf0..e4da71e68 100644
--- a/InCallUI/src/com/android/incallui/CallCardPresenter.java
+++ b/InCallUI/src/com/android/incallui/CallCardPresenter.java
@@ -60,6 +60,13 @@ public class CallCardPresenter extends Presenter<CallCardPresenter.CallCardUi>
implements InCallStateListener, IncomingCallListener, InCallDetailsListener,
InCallEventListener {
+ public interface EmergencyCallListener {
+ public void onCallUpdated(BaseFragment fragment, boolean isEmergency);
+ }
+
+ private static final EmergencyCallListener mEmergencyCallListener =
+ ObjectFactory.newEmergencyCallListener();
+
private static final String TAG = CallCardPresenter.class.getSimpleName();
private static final long CALL_TIME_UPDATE_INTERVAL_MS = 1000;
@@ -526,6 +533,11 @@ public class CallCardPresenter extends Presenter<CallCardPresenter.CallCardUi>
ui.setPrimary(null, null, false, null, null, false);
}
+ if (mEmergencyCallListener != null) {
+ boolean isEmergencyCall = PhoneNumberUtils.isEmergencyNumber(
+ getNumberFromHandle(mPrimary.getHandle()));
+ mEmergencyCallListener.onCallUpdated((BaseFragment) ui, isEmergencyCall);
+ }
}
private void updateSecondaryDisplayInfo() {
diff --git a/InCallUI/src/com/android/incallui/ContactInfoCache.java b/InCallUI/src/com/android/incallui/ContactInfoCache.java
index 49621695b..27bf5a8f6 100644
--- a/InCallUI/src/com/android/incallui/ContactInfoCache.java
+++ b/InCallUI/src/com/android/incallui/ContactInfoCache.java
@@ -29,7 +29,7 @@ import android.text.TextUtils;
import com.android.contacts.common.util.PhoneNumberHelper;
import com.android.incallui.service.PhoneNumberService;
-import com.android.incalluibind.ServiceFactory;
+import com.android.incalluibind.ObjectFactory;
import com.android.services.telephony.common.MoreStrings;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
@@ -69,7 +69,7 @@ public class ContactInfoCache implements ContactsAsyncHelper.OnImageLoadComplete
private ContactInfoCache(Context context) {
mContext = context;
- mPhoneNumberService = ServiceFactory.newPhoneNumberService(context);
+ mPhoneNumberService = ObjectFactory.newPhoneNumberService(context);
}
public ContactCacheEntry getInfo(String callId) {