summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpengfeix <quic_pengfeix@quicinc.com>2022-06-24 20:27:30 +0800
committerPengfei <quic_pengfeix@quicinc.com>2022-06-26 21:36:12 +0800
commita0c27a4145ed049260816c4ac1720a660e33fdc6 (patch)
tree0537d2203567e30bdae304bf7b0779cc5690e78a
parente2481d6d725283e8bdf48b5347a0daa4025d0973 (diff)
Update extras for two incoming calls once DSDA and DSDS transition
- In DSDA mode, in case of two incoming calls in two different subs, once DSDA and DSDS transition, telephony needs to update EXTRA_ANSWERING_DROPS_FG_CALL for each incoming call instead of only setting it for the first incoming call. Change-Id: I0c3ff9691fca5da48a5569c962fc8e48216f934b CRs-Fixed: 3223606
-rw-r--r--src/com/android/services/telephony/TelephonyConnectionService.java12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/com/android/services/telephony/TelephonyConnectionService.java b/src/com/android/services/telephony/TelephonyConnectionService.java
index d5d1d952ce..6f579b910e 100644
--- a/src/com/android/services/telephony/TelephonyConnectionService.java
+++ b/src/com/android/services/telephony/TelephonyConnectionService.java
@@ -150,12 +150,14 @@ public class TelephonyConnectionService extends ConnectionService {
handleTtyModeChange(isTtyNowEnabled);
}
} else if (ACTION_MSIM_VOICE_CAPABILITY_CHANGED.equals(action)) {
- // Add extra to call if answering this incoming call would cause an in progress
+ // Add extra to calls if answering one of incoming call would cause an in progress
// call on another subscription to be disconnected.
- Connection ringingConnection = getRingingConnection();
- if (ringingConnection != null) {
- maybeIndicateAnsweringWillDisconnect((TelephonyConnection)ringingConnection,
- ringingConnection.getPhoneAccountHandle());
+ for (Connection current : getAllConnections()) {
+ if (isTelephonyConnection(current) &&
+ current.getState() == Connection.STATE_RINGING) {
+ maybeIndicateAnsweringWillDisconnect((TelephonyConnection)current,
+ current.getPhoneAccountHandle());
+ }
}
// Update context based switch based on the DSDA/DSDS scenario