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

Commit 9321a875 authored by Santiago Seifert's avatar Santiago Seifert
Browse files

Add human-readable state int to PlaybackState

Bug: 205124386
Test: adb shell dumpsys media_session
Change-Id: Ie583876260cb0311162b219235a4eb2a672ffc5a
parent 4f31d4f9
Loading
Loading
Loading
Loading
+37 −1
Original line number Diff line number Diff line
@@ -333,7 +333,11 @@ public final class PlaybackState implements Parcelable {
    @Override
    public String toString() {
        StringBuilder bob = new StringBuilder("PlaybackState {");
        bob.append("state=").append(mState);
        bob.append("state=")
                .append(getStringForStateInt(mState))
                .append("(")
                .append(mState)
                .append(")");
        bob.append(", position=").append(mPosition);
        bob.append(", buffered position=").append(mBufferedPosition);
        bob.append(", speed=").append(mSpeed);
@@ -533,6 +537,38 @@ public final class PlaybackState implements Parcelable {
        }
    };

    /** Returns a human readable string representation of the given int {@code state} */
    private static String getStringForStateInt(int state) {
        switch (state) {
            case STATE_NONE:
                return "NONE";
            case STATE_STOPPED:
                return "STOPPED";
            case STATE_PAUSED:
                return "PAUSED";
            case STATE_PLAYING:
                return "PLAYING";
            case STATE_FAST_FORWARDING:
                return "FAST_FORWARDING";
            case STATE_REWINDING:
                return "REWINDING";
            case STATE_BUFFERING:
                return "BUFFERING";
            case STATE_ERROR:
                return "ERROR";
            case STATE_CONNECTING:
                return "CONNECTING";
            case STATE_SKIPPING_TO_PREVIOUS:
                return "SKIPPING_TO_PREVIOUS";
            case STATE_SKIPPING_TO_NEXT:
                return "SKIPPING_TO_NEXT";
            case STATE_SKIPPING_TO_QUEUE_ITEM:
                return "SKIPPING_TO_QUEUE_ITEM";
            default:
                return "UNKNOWN";
        }
    }

    /**
     * {@link PlaybackState.CustomAction CustomActions} can be used to extend the capabilities of
     * the standard transport controls by exposing app specific actions to