Merge "Fix audio state issue for MT IMS call"
am: bc7f1814b2

Change-Id: I06bd242281f33e2f9f42a0f14bf511c4211a4ff4
diff --git a/src/com/android/server/telecom/CallAudioModeStateMachine.java b/src/com/android/server/telecom/CallAudioModeStateMachine.java
index 3d778f2..d8d1b89 100644
--- a/src/com/android/server/telecom/CallAudioModeStateMachine.java
+++ b/src/com/android/server/telecom/CallAudioModeStateMachine.java
@@ -276,9 +276,10 @@
                     // This happens when an IMS call is answered by the in-call UI. Special case
                     // that we have to deal with for some reason.
 
-                    // VOIP calls should never invoke this mechanism, so transition directly to
-                    // the sim call focus state.
-                    transitionTo(mSimCallFocusState);
+                    // The IMS audio routing may be via modem or via RTP stream. In case via RTP
+                    // stream, the state machine should transit to mVoipCallFocusState.
+                    transitionTo(args.foregroundCallIsVoip
+                            ? mVoipCallFocusState : mSimCallFocusState);
                     return HANDLED;
                 default:
                     // The forced focus switch commands are handled by BaseState.