More improvements call flow.
Bug: 73774461,73774884,73775516,73775590,73775873
Test: unit/manual
PiperOrigin-RevId: 193236364
Change-Id: I03726ed7e5a3383f6e8632fb2cf9b948c3203f87
diff --git a/java/com/android/incallui/InCallActivity.java b/java/com/android/incallui/InCallActivity.java
index 0c57dff..91f557b 100644
--- a/java/com/android/incallui/InCallActivity.java
+++ b/java/com/android/incallui/InCallActivity.java
@@ -1347,9 +1347,11 @@
if (didShowSpeakEasyScreen) {
if (lastShownSpeakEasyScreenUniqueCallid.equals(call.getUniqueCallId())) {
+ LogUtil.i("InCallActivity.showSpeakEasyFragment", "found existing fragment");
return false;
}
hideSpeakEasyFragment(transaction);
+ LogUtil.i("InCallActivity.showSpeakEasyFragment", "hid existing fragment");
}
Optional<Fragment> speakEasyFragment = speakEasyCallManager.getSpeakEasyFragment(call);
@@ -1357,6 +1359,10 @@
transaction.add(R.id.main, speakEasyFragment.get(), Tags.SPEAK_EASY_SCREEN);
didShowSpeakEasyScreen = true;
lastShownSpeakEasyScreenUniqueCallid = call.getUniqueCallId();
+ LogUtil.i(
+ "InCallActivity.showSpeakEasyFragment",
+ "set fragment for call %s",
+ lastShownSpeakEasyScreenUniqueCallid);
return true;
}
return false;
@@ -1381,11 +1387,16 @@
return false;
}
+ @VisibleForTesting
public void setSpeakEasyCallManager(SpeakEasyCallManager speakEasyCallManager) {
this.speakEasyCallManager = speakEasyCallManager;
}
+ @Nullable
public SpeakEasyCallManager getSpeakEasyCallManager() {
+ if (this.speakEasyCallManager == null) {
+ this.speakEasyCallManager = InCallPresenter.getInstance().getSpeakEasyCallManager();
+ }
return speakEasyCallManager;
}