Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d7549d63 authored by Tyler Gunn's avatar Tyler Gunn Committed by The Android Automerger
Browse files

Fixing where call goes from disconnecting to active to disconnecting state.

- Adding disconnecting state to telecom used to communicate that a call is
being disconnected to InCall UI (rather than it existing only as a state
in the InCall UI).

Bug: 17821930
Change-Id: I6c2d9521915ba154c0468eea62c12c30060edd2e
parent 4a886e0c
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -80,6 +80,13 @@ public final class Call {
     */
    public static final int STATE_CONNECTING = 9;

    /**
     * The state of a {@code Call} when the user has initiated a disconnection of the call, but the
     * call has not yet been disconnected by the underlying {@code ConnectionService}.  The next
     * state of the call is (potentially) {@link #STATE_DISCONNECTED}.
     */
    public static final int STATE_DISCONNECTING = 10;

    /**
     * The key to retrieve the optional {@code PhoneAccount}s Telecom can bundle with its Call
     * extras. Used to pass the phone accounts to display on the front end to the user in order to
@@ -828,6 +835,8 @@ public final class Call {
                return STATE_DISCONNECTED;
            case CallState.ABORTED:
                return STATE_DISCONNECTED;
            case CallState.DISCONNECTING:
                return STATE_DISCONNECTING;
            default:
                Log.wtf(this, "Unrecognized CallState %s", parcelableCallState);
                return STATE_NEW;
+12 −0
Original line number Diff line number Diff line
@@ -100,6 +100,16 @@ public final class CallState {
     */
    public static final int ABORTED = 8;

    /**
     * Indicates that the call is in the process of being disconnected and will transition next
     * to a {@link #DISCONNECTED} state.
     * <p>
     * This state is not expected to be communicated from the Telephony layer, but will be reported
     * to the InCall UI for calls where disconnection has been initiated by the user but the
     * ConnectionService has confirmed the call as disconnected.
     */
    public static final int DISCONNECTING = 9;

    public static String toString(int callState) {
        switch (callState) {
            case NEW:
@@ -120,6 +130,8 @@ public final class CallState {
                return "DISCONNECTED";
            case ABORTED:
                return "ABORTED";
            case DISCONNECTING:
                return "DISCONNECTING";
            default:
                return "UNKNOWN";
        }