Loading telephony/java/com/android/internal/telephony/CallManager.java +27 −0 Original line number Diff line number Diff line Loading @@ -465,6 +465,33 @@ public final class CallManager { } } /** * Hangup foreground call and resume the specific background call * * Note: this is noop if there is no foreground call or the heldCall is null * * @param heldCall to become foreground * @throws CallStateException */ public void hangupForegroundResumeBackground(Call heldCall) throws CallStateException { Phone foregroundPhone = null; Phone backgroundPhone = null; if (hasActiveFgCall()) { foregroundPhone = getFgPhone(); if (heldCall != null) { backgroundPhone = heldCall.getPhone(); if (foregroundPhone == backgroundPhone) { getActiveFgCall().hangup(); } else { // the call to be hangup and resumed belongs to different phones getActiveFgCall().hangup(); switchHoldingAndActive(heldCall); } } } } /** * Whether or not the phone can conference in the current phone * state--that is, one call holding and one call active. Loading Loading
telephony/java/com/android/internal/telephony/CallManager.java +27 −0 Original line number Diff line number Diff line Loading @@ -465,6 +465,33 @@ public final class CallManager { } } /** * Hangup foreground call and resume the specific background call * * Note: this is noop if there is no foreground call or the heldCall is null * * @param heldCall to become foreground * @throws CallStateException */ public void hangupForegroundResumeBackground(Call heldCall) throws CallStateException { Phone foregroundPhone = null; Phone backgroundPhone = null; if (hasActiveFgCall()) { foregroundPhone = getFgPhone(); if (heldCall != null) { backgroundPhone = heldCall.getPhone(); if (foregroundPhone == backgroundPhone) { getActiveFgCall().hangup(); } else { // the call to be hangup and resumed belongs to different phones getActiveFgCall().hangup(); switchHoldingAndActive(heldCall); } } } } /** * Whether or not the phone can conference in the current phone * state--that is, one call holding and one call active. Loading