diff options
Diffstat (limited to 'java/com/android/incallui/InCallActivity.java')
-rw-r--r-- | java/com/android/incallui/InCallActivity.java | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/java/com/android/incallui/InCallActivity.java b/java/com/android/incallui/InCallActivity.java index bda003ccc..6ea31fc4c 100644 --- a/java/com/android/incallui/InCallActivity.java +++ b/java/com/android/incallui/InCallActivity.java @@ -35,9 +35,9 @@ import android.view.MenuItem; import android.view.MotionEvent; import android.view.View; import com.android.dialer.common.Assert; -import com.android.dialer.common.ConfigProviderBindings; import com.android.dialer.common.LogUtil; import com.android.dialer.compat.ActivityCompat; +import com.android.dialer.configprovider.ConfigProviderBindings; import com.android.dialer.logging.Logger; import com.android.dialer.logging.ScreenEvent; import com.android.incallui.answer.bindings.AnswerBindings; @@ -630,12 +630,22 @@ public class InCallActivity extends TransactionSafeFragmentActivity AnswerScreen answerScreen = getAnswerScreen(); if (answerScreen.getCallId().equals(call.getId()) && answerScreen.isVideoCall() == call.isVideoCall() - && answerScreen.isVideoUpgradeRequest() == isVideoUpgradeRequest) { + && answerScreen.isVideoUpgradeRequest() == isVideoUpgradeRequest + && !answerScreen.isActionTimeout()) { + LogUtil.d( + "InCallActivity.showAnswerScreenFragment", + "answer fragment exists for same call and has NOT been accepted/rejected/timed out"); return false; } - LogUtil.i( - "InCallActivity.showAnswerScreenFragment", - "answer fragment exists but arguments do not match"); + if (answerScreen.isActionTimeout()) { + LogUtil.i( + "InCallActivity.showAnswerScreenFragment", + "answer fragment exists but has been accepted/rejected and timed out"); + } else { + LogUtil.i( + "InCallActivity.showAnswerScreenFragment", + "answer fragment exists but arguments do not match"); + } hideAnswerScreenFragment(transaction); } |