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

Commit 4afc6afd authored by Tyler Gunn's avatar Tyler Gunn
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 53c84002
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";
        }