Update logic for incoming and active calls.

Bug: 73774461,73774884,73775516,73775590
Test: unit
PiperOrigin-RevId: 192456945
Change-Id: I0f0b44e56550939d4af16297bd305297e6c74310
diff --git a/java/com/android/incallui/InCallActivity.java b/java/com/android/incallui/InCallActivity.java
index 8f0fbad..0c57dff 100644
--- a/java/com/android/incallui/InCallActivity.java
+++ b/java/com/android/incallui/InCallActivity.java
@@ -1396,8 +1396,10 @@
       return new ShouldShowUiResult(false, null);
     }
 
-    // TODO(erfanian): Get a better call?
-    DialerCall call = CallList.getInstance().getActiveCall();
+    DialerCall call =
+        CallList.getInstance().getIncomingCall() != null
+            ? CallList.getInstance().getIncomingCall()
+            : CallList.getInstance().getActiveCall();
 
     if (call == null) {
       return new ShouldShowUiResult(false, call);
@@ -1417,7 +1419,7 @@
 
   private ShouldShowUiResult getShouldShowAnswerUi() {
     DialerCall call = CallList.getInstance().getIncomingCall();
-    if (call != null) {
+    if (call != null && !call.isSpeakEasyCall()) {
       LogUtil.i("InCallActivity.getShouldShowAnswerUi", "found incoming call");
       return new ShouldShowUiResult(true, call);
     }