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
This commit is contained in:
John Wang
2010-11-10 15:35:51 -08:00
parent a784d5528f
commit d19f44f3e3

View File

@@ -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;