Unmute emergency calls when they connect.
Also, never allow muting of an emergency call.
bug:10750253
Change-Id: If67375a6e8776971e2ddace3e7fb11794d9e5283
diff --git a/src/com/android/phone/PhoneUtils.java b/src/com/android/phone/PhoneUtils.java
index c3abd9f..4b67db9 100644
--- a/src/com/android/phone/PhoneUtils.java
+++ b/src/com/android/phone/PhoneUtils.java
@@ -727,6 +727,12 @@
info.phoneNumber = number;
connection.setUserData(info);
}
+
+ // Always set mute to off when we are dialing an emergency number
+ if (isEmergencyCall) {
+ setMute(false);
+ }
+
setAudioMode();
if (DBG) log("about to activate speaker");
@@ -1935,6 +1941,11 @@
static void setMute(boolean muted) {
CallManager cm = PhoneGlobals.getInstance().mCM;
+ // Emergency calls never get muted.
+ if (isInEmergencyCall(cm)) {
+ muted = false;
+ }
+
// make the call to mute the audio
setMuteInternal(cm.getFgPhone(), muted);
@@ -1948,6 +1959,16 @@
}
}
+ static boolean isInEmergencyCall(CallManager cm) {
+ for (Connection cn : cm.getActiveFgCall().getConnections()) {
+ if (PhoneNumberUtils.isLocalEmergencyNumber(cn.getAddress(),
+ PhoneGlobals.getInstance())) {
+ return true;
+ }
+ }
+ return false;
+ }
+
/**
* Internally used muting function.
*/