diff options
author | alk3pInjection <webmaster@raspii.tech> | 2022-08-05 20:43:06 +0800 |
---|---|---|
committer | alk3pInjection <webmaster@raspii.tech> | 2022-08-05 20:43:06 +0800 |
commit | 0afe85b921f569f9c9bb276aaed8860b49119925 (patch) | |
tree | 88dd5392b4b71d8cea0e3568540fbfe394522c93 /src | |
parent | f4b2efdec7f0f3e9830505ca6003fe72aed297c0 (diff) | |
parent | d6b61a0befacd0a611370e9b10e017c6bdc7da34 (diff) |
Merge tag 'LA.QSSI.12.0.r1-08300-qssi.0' into sugisawa-mr1HEADsugisawa-mr1
"LA.QSSI.12.0.r1-08300-qssi.0"
Change-Id: I3852036663a91014a87fc57632a7d5a9f2e409c8
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/services/telephony/TelephonyConnectionService.java | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/src/com/android/services/telephony/TelephonyConnectionService.java b/src/com/android/services/telephony/TelephonyConnectionService.java index 543e9340be..6f579b910e 100644 --- a/src/com/android/services/telephony/TelephonyConnectionService.java +++ b/src/com/android/services/telephony/TelephonyConnectionService.java @@ -150,12 +150,23 @@ 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 + final boolean shallDisableContextBasedSwap = isConcurrentCallsPossible(); + for (Connection current : getAllConnections()) { + if (current instanceof TelephonyConnection) { + ((TelephonyConnection) current).disableContextBasedSwap( + shallDisableContextBasedSwap); + } } } } |