summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Wang <johnwang@google.com>2010-11-10 15:35:51 -0800
committerJohn Wang <johnwang@google.com>2010-11-10 15:35:51 -0800
commitd19f44f3e384114a16df2facb3aeec392cd39a60 (patch)
tree3b699d12486f45a41c8b5e2fa879f5f89e3bc509
parenta784d5528f6fa07a48bb7de9dcfa04eb60044927 (diff)
downloadbase-d19f44f3e384114a16df2facb3aeec392cd39a60.tar.gz
Fix the audio mode glitch during hangup.
Fix bug # 3136179. Keep audio mode as IN_CALL during hangup DISCONNECTING state to prevent the NORMAL and IN_CALL glitch in auiod setMode. Change-Id: I5513a3d5c65bd13ac054c9718c4dbd7d6db9eaf3
-rw-r--r--telephony/java/com/android/internal/telephony/CallManager.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/telephony/java/com/android/internal/telephony/CallManager.java b/telephony/java/com/android/internal/telephony/CallManager.java
index 5f9a3e7dac2b..d74a5472fd6f 100644
--- a/telephony/java/com/android/internal/telephony/CallManager.java
+++ b/telephony/java/com/android/internal/telephony/CallManager.java
@@ -380,7 +380,11 @@ public final class CallManager {
break;
case OFFHOOK:
Phone fgPhone = getFgPhone();
- if (hasActiveFgCall() && !(fgPhone instanceof SipPhone)) {
+ // Enable IN_CALL mode while foreground call is in DIALING,
+ // ALERTING, ACTIVE and DISCONNECTING state and not from sipPhone
+ if (getActiveFgCallState() != Call.State.IDLE
+ && getActiveFgCallState() != Call.State.DISCONNECTED
+ && !(fgPhone instanceof SipPhone)) {
mode = AudioManager.MODE_IN_CALL;
}
break;