Notify CallAttributeListener IMS call type change
Fix to notify CallAttributesListener when IMS call type changed.
Bug: 265610260
Test: device test. VZW TC VoWiFi 5.15
Change-Id: I5359edc5405b61735ab1473caefe2f5a64d8c7a7
diff --git a/src/java/com/android/internal/telephony/imsphone/ImsPhoneBase.java b/src/java/com/android/internal/telephony/imsphone/ImsPhoneBase.java
index 1426ac8..8a1041d 100644
--- a/src/java/com/android/internal/telephony/imsphone/ImsPhoneBase.java
+++ b/src/java/com/android/internal/telephony/imsphone/ImsPhoneBase.java
@@ -201,6 +201,10 @@
AsyncResult ar = new AsyncResult(null, this, null);
mPreciseCallStateRegistrants.notifyRegistrants(ar);
+ notifyPreciseCallStateToNotifier();
+ }
+
+ public void notifyPreciseCallStateToNotifier() {
ImsPhoneCall ringingCall = (ImsPhoneCall) getRingingCall();
ImsPhoneCall foregroundCall = (ImsPhoneCall) getForegroundCall();
ImsPhoneCall backgroundCall = (ImsPhoneCall) getBackgroundCall();
diff --git a/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java b/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java
index 6840f4b..99423e3 100644
--- a/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java
+++ b/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java
@@ -3048,6 +3048,11 @@
conn.maybeChangeRingbackState();
maybeSetVideoCallProvider(conn, imsCall);
+ // IMS call profile might be changed while call state is maintained. In this case, it's
+ // required to notify to CallAttributesListener.
+ // Since call state is not changed, TelephonyRegistry will not notify to
+ // PreciseCallStateListener.
+ mPhone.notifyPreciseCallStateToNotifier();
return;
}