diff options
author | pengfeix <quic_pengfeix@quicinc.com> | 2022-06-24 20:27:30 +0800 |
---|---|---|
committer | Pengfei <quic_pengfeix@quicinc.com> | 2022-06-26 21:36:12 +0800 |
commit | a0c27a4145ed049260816c4ac1720a660e33fdc6 (patch) | |
tree | 0537d2203567e30bdae304bf7b0779cc5690e78a | |
parent | e2481d6d725283e8bdf48b5347a0daa4025d0973 (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.java | 12 |
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 |