Display InCallUI on auto answer
When a MT call is auto answered bring the InCallUI to
foreground by starting the InCallActivity.
Change-Id: I77e21f41699fa3ff78dd793d2f226ad95d11497f
CRs-Fixed: 749609, 800088
diff --git a/InCallUI/src/com/android/incallui/InCallPresenter.java b/InCallUI/src/com/android/incallui/InCallPresenter.java
index e3afa37..24b7db4 100644
--- a/InCallUI/src/com/android/incallui/InCallPresenter.java
+++ b/InCallUI/src/com/android/incallui/InCallPresenter.java
@@ -1297,6 +1297,18 @@
// TODO: Consider a proper state machine implementation
+ //If the call is auto answered bring up the InCallActivity
+ boolean isAutoAnswer = false;
+
+ if ((mCallList.getDisconnectedCall() == null) &&
+ (mCallList.getDisconnectingCall() == null)) {
+ isAutoAnswer = (mInCallState == InCallState.INCOMING) &&
+ (newState == InCallState.INCALL) &&
+ (mInCallActivity == null);
+ }
+
+ Log.d(this, "startOrFinishUi: " + isAutoAnswer);
+
// If the state isn't changing we have already done any starting/stopping of activities in
// a previous pass...so lets cut out early
if (newState == mInCallState) {
@@ -1373,7 +1385,7 @@
return mInCallState;
}
- if (showCallUi || showAccountPicker) {
+ if (showCallUi || showAccountPicker || isAutoAnswer) {
Log.i(this, "Start in call UI");
showInCall(false /* showDialpad */, !showAccountPicker /* newOutgoingCall */);
} else if (startIncomingCallSequence) {