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

Commit 37e3316b authored by Jaewan Kim's avatar Jaewan Kim Committed by android-build-merger
Browse files

MediaSession2: Add SessionCallback#onCurrentMediaItemChanged()

am: 87086f59

Change-Id: I5861b8b3d24546b0064ddd7547da6b8906385c6c
parents a062aa3a 87086f59
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -23357,7 +23357,7 @@ package android.media {
    method public void close();
    method public void fastForward();
    method public long getBufferedPosition();
    method public android.media.MediaItem2 getCurrentPlaylistItem();
    method public android.media.MediaItem2 getCurrentMediaItem();
    method public android.media.MediaController2.PlaybackInfo getPlaybackInfo();
    method public float getPlaybackSpeed();
    method public int getPlayerState();
@@ -23403,7 +23403,7 @@ package android.media {
    method public void onAllowedCommandsChanged(android.media.MediaController2, android.media.MediaSession2.CommandGroup);
    method public void onBufferedPositionChanged(android.media.MediaController2, long);
    method public void onConnected(android.media.MediaController2, android.media.MediaSession2.CommandGroup);
    method public void onCurrentPlaylistItemChanged(android.media.MediaController2, android.media.MediaItem2);
    method public void onCurrentMediaItemChanged(android.media.MediaController2, android.media.MediaItem2);
    method public void onCustomCommand(android.media.MediaController2, android.media.MediaSession2.Command, android.os.Bundle, android.os.ResultReceiver);
    method public void onCustomLayoutChanged(android.media.MediaController2, java.util.List<android.media.MediaSession2.CommandButton>);
    method public void onDisconnected(android.media.MediaController2);
@@ -24543,7 +24543,6 @@ package android.media {
  public abstract interface MediaPlaylistController {
    method public abstract void addPlaylistItem(int, android.media.MediaItem2);
    method public abstract android.media.MediaItem2 getCurrentPlaylistItem();
    method public abstract java.util.List<android.media.MediaItem2> getPlaylist();
    method public abstract android.media.MediaMetadata2 getPlaylistMetadata();
    method public abstract int getRepeatMode();
@@ -24856,7 +24855,7 @@ package android.media {
    method public void close();
    method public void fastForward();
    method public java.util.List<android.media.MediaSession2.ControllerInfo> getConnectedControllers();
    method public android.media.MediaItem2 getCurrentPlaylistItem();
    method public android.media.MediaItem2 getCurrentMediaItem();
    method public android.media.MediaPlaylistController getMediaPlaylistController();
    method public float getPlaybackSpeed();
    method public android.media.MediaPlayerBase getPlayer();
@@ -24999,6 +24998,7 @@ package android.media {
    method public void onBufferingStateChanged(android.media.MediaSession2, android.media.MediaPlayerBase, android.media.MediaItem2, int);
    method public boolean onCommandRequest(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo, android.media.MediaSession2.Command);
    method public android.media.MediaSession2.CommandGroup onConnect(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo);
    method public void onCurrentMediaItemChanged(android.media.MediaSession2, android.media.MediaPlayerBase, android.media.MediaItem2);
    method public void onCustomCommand(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo, android.media.MediaSession2.Command, android.os.Bundle, android.os.ResultReceiver);
    method public void onDisconnected(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo);
    method public void onMediaPrepared(android.media.MediaSession2, android.media.MediaPlayerBase, android.media.MediaItem2);
+6 −7
Original line number Diff line number Diff line
@@ -146,7 +146,7 @@ public class MediaController2 implements AutoCloseable, MediaPlaylistController
         * @param playlist A new playlist set by the session.
         * @see #onPositionChanged(MediaController2, long, long)
         * @see #onBufferedPositionChanged(MediaController2, long)
         * @see #onCurrentPlaylistItemChanged(MediaController2, MediaItem2)
         * @see #onCurrentMediaItemChanged(MediaController2, MediaItem2)
         * @hide
         */
        // TODO(jaewan): Remove (b/74174728)
@@ -211,7 +211,7 @@ public class MediaController2 implements AutoCloseable, MediaPlaylistController
                @Nullable Bundle extras) { }

        /**
         * Called when the player's current playing item is changed
         * Called when the player's currently playing item is changed
         * <p>
         * When it's called, you should invalidate previous playback information and wait for later
         * callbacks.
@@ -220,9 +220,8 @@ public class MediaController2 implements AutoCloseable, MediaPlaylistController
         * @param item new item
         * @see #onPositionChanged(MediaController2, long, long)
         * @see #onBufferedPositionChanged(MediaController2, long)
         * @see #onCurrentPlaylistItemChanged(MediaController2, MediaItem2)
         */
        public void onCurrentPlaylistItemChanged(@NonNull MediaController2 controller,
        public void onCurrentMediaItemChanged(@NonNull MediaController2 controller,
                @NonNull MediaItem2 item) { }

        /**
@@ -808,12 +807,12 @@ public class MediaController2 implements AutoCloseable, MediaPlaylistController

    /**
     * Get the lastly cached current item from
     * {@link ControllerCallback#onCurrentPlaylistItemChanged(MediaController2, MediaItem2)}.
     * {@link ControllerCallback#onCurrentMediaItemChanged(MediaController2, MediaItem2)}.
     *
     * @return index of the current item
     */
    @Override
    public MediaItem2 getCurrentPlaylistItem() {
    public MediaItem2 getCurrentMediaItem() {
        // TODO(jaewan): Rename provider API
        return mProvider.getCurrentPlaylistItem_impl();
    }

+0 −6
Original line number Diff line number Diff line
@@ -212,12 +212,6 @@ public interface MediaPlaylistController {
     */
    void replacePlaylistItem(int index, @NonNull MediaItem2 item);

    /**
     * Returns the current media item.
     * @return the current media item, or null if none is set, or none available to play.
     */
    MediaItem2 getCurrentPlaylistItem();

    /**
     * Skips to the the media item, and plays from it.
     *
+15 −2
Original line number Diff line number Diff line
@@ -778,6 +778,19 @@ public class MediaSession2 implements AutoCloseable, MediaPlaylistController {
        public void onPrepareFromUri(@NonNull MediaSession2 session,
                @NonNull ControllerInfo controller, @NonNull Uri uri, @Nullable Bundle extras) { }

        /**
         * Called when the player's current playing item is changed
         * <p>
         * When it's called, you should invalidate previous playback information and wait for later
         * callbacks.
         *
         * @param session the controller for this event
         * @param mpb the player for this event
         * @param item new item
         */
        public void onCurrentMediaItemChanged(@NonNull MediaSession2 session,
                @NonNull MediaPlayerBase mpb, @NonNull MediaItem2 item) { }

        /**
         * Called when the player is <i>prepared</i>, i.e. it is ready to play the content
         * referenced by the given data source.
@@ -1753,8 +1766,8 @@ public class MediaSession2 implements AutoCloseable, MediaPlaylistController {
     *
     * @return currently playing media item
     */
    @Override
    public MediaItem2 getCurrentPlaylistItem() {
    public MediaItem2 getCurrentMediaItem() {
        // TODO(jaewan): Rename provider API
        return mProvider.getCurrentPlaylistItem_impl();
    }