Example usage for android.support.v4.media.session MediaControllerCompat getQueue

List of usage examples for android.support.v4.media.session MediaControllerCompat getQueue

Introduction

In this page you can find the example usage for android.support.v4.media.session MediaControllerCompat getQueue.

Prototype

public List<QueueItem> getQueue() 

Source Link

Usage

From source file:com.murati.oszk.audiobook.ui.tv.TvPlaybackFragment.java

protected void updatePlaybackState(PlaybackStateCompat state) {
    if (mPlaybackControlsRow == null) {
        // We only update playback state after we get a valid metadata.
        return;//from  w w  w.  ja  v  a2 s.  c  o m
    }
    mLastPosition = state.getPosition();
    mLastPositionUpdateTime = state.getLastPositionUpdateTime();
    switch (state.getState()) {
    case PlaybackStateCompat.STATE_PLAYING:
        startProgressAutomation();
        mPlayPauseAction.setIndex(PlayPauseAction.PAUSE);
        break;
    case PlaybackStateCompat.STATE_PAUSED:
        stopProgressAutomation();
        mPlayPauseAction.setIndex(PlayPauseAction.PLAY);
        break;
    }

    MediaControllerCompat controller = MediaControllerCompat.getMediaController(getActivity());
    updatePlayListRow(controller.getQueue());
    mRowsAdapter.notifyArrayItemRangeChanged(mRowsAdapter.indexOf(mPlaybackControlsRow), 1);
}

From source file:com.bayapps.android.robophish.ui.tv.TvPlaybackFragment.java

protected void updatePlaybackState(PlaybackStateCompat state) {
    if (mPlaybackControlsRow == null) {
        // We only update playback state after we get a valid metadata.
        return;//from w w w  . j a  va 2  s .c om
    }
    mLastPosition = state.getPosition();
    mLastPositionUpdateTime = state.getLastPositionUpdateTime();
    switch (state.getState()) {
    case PlaybackStateCompat.STATE_PLAYING:
        startProgressAutomation();
        mPlayPauseAction.setIndex(PlayPauseAction.PAUSE);
        break;
    case PlaybackStateCompat.STATE_PAUSED:
        stopProgressAutomation();
        mPlayPauseAction.setIndex(PlayPauseAction.PLAY);
        break;
    }

    MediaControllerCompat controller = getActivity().getSupportMediaController();
    updatePlayListRow(controller.getQueue());
    mRowsAdapter.notifyArrayItemRangeChanged(mRowsAdapter.indexOf(mPlaybackControlsRow), 1);
}

From source file:com.example.android.uamp.ui.tv.TvPlaybackFragment.java

protected void updatePlayListRow(List<MediaSessionCompat.QueueItem> playlistQueue) {
    if (QueueHelper.equals(mPlaylistQueue, playlistQueue)) {
        // if the playlist queue hasn't changed, we don't need to update it
        return;/*from   w w  w .  j  a v  a  2 s .  co m*/
    }
    LogHelper.d(TAG, "Updating playlist queue ('now playing')");
    mPlaylistQueue = playlistQueue;
    if (playlistQueue == null || playlistQueue.isEmpty()) {
        // Remove the playlist row if no items are in the playlist
        mRowsAdapter.remove(mListRow);
        mListRow = null;
        return;
    }
    mListRowAdapter.clear();
    for (int i = 0; i < playlistQueue.size(); i++) {
        MediaSessionCompat.QueueItem item = playlistQueue.get(i);
        mListRowAdapter.add(item);
    }

    if (mListRow == null) {
        int queueSize = 0;
        MediaControllerCompat controller = getActivity().getSupportMediaController();
        if (controller != null && controller.getQueue() != null) {
            queueSize = controller.getQueue().size();
        }
        HeaderItem header = new HeaderItem(0, queueSize + " song(s) in this playlist");

        mPresenterSelector.addClassPresenter(ListRow.class, new ListRowPresenter());

        mListRow = new ListRow(header, mListRowAdapter);
        mRowsAdapter.add(mListRow);
    } else {
        mRowsAdapter.notifyArrayItemRangeChanged(mRowsAdapter.indexOf(mListRow), 1);
    }
}

From source file:com.murati.oszk.audiobook.ui.tv.TvPlaybackFragment.java

protected void updatePlayListRow(List<MediaSessionCompat.QueueItem> playlistQueue) {
    if (QueueHelper.equals(mPlaylistQueue, playlistQueue)) {
        // if the playlist queue hasn't changed, we don't need to update it
        return;//from  w  w  w . j a  v  a  2  s  . c om
    }
    LogHelper.d(TAG, "Updating playlist queue ('now playing')");
    mPlaylistQueue = playlistQueue;
    if (playlistQueue == null || playlistQueue.isEmpty()) {
        // Remove the playlist row if no items are in the playlist
        mRowsAdapter.remove(mListRow);
        mListRow = null;
        return;
    }
    mListRowAdapter.clear();
    for (int i = 0; i < playlistQueue.size(); i++) {
        MediaSessionCompat.QueueItem item = playlistQueue.get(i);
        mListRowAdapter.add(item);
    }

    if (mListRow == null) {
        int queueSize = 0;
        MediaControllerCompat controller = MediaControllerCompat.getMediaController(getActivity());
        if (controller != null && controller.getQueue() != null) {
            queueSize = controller.getQueue().size();
        }
        HeaderItem header = new HeaderItem(0, queueSize + " song(s) in this playlist");

        mPresenterSelector.addClassPresenter(ListRow.class, new ListRowPresenter());

        mListRow = new ListRow(header, mListRowAdapter);
        mRowsAdapter.add(mListRow);
    } else {
        mRowsAdapter.notifyArrayItemRangeChanged(mRowsAdapter.indexOf(mListRow), 1);
    }
}

From source file:com.bayapps.android.robophish.ui.tv.TvPlaybackFragment.java

protected void updatePlayListRow(List<MediaSessionCompat.QueueItem> playlistQueue) {
    if (equalsQueue(mPlaylistQueue, playlistQueue)) {
        // if the playlist queue hasn't changed, we don't need to update it
        return;//from w w w . ja v  a  2s.c  o  m
    }
    LogHelper.d(TAG, "Updating playlist queue ('now playing')");
    mPlaylistQueue = playlistQueue;
    if (playlistQueue == null || playlistQueue.isEmpty()) {
        // Remove the playlist row if no items are in the playlist
        mRowsAdapter.remove(mListRow);
        mListRow = null;
        return;
    }
    mListRowAdapter.clear();
    for (int i = 0; i < playlistQueue.size(); i++) {
        MediaSessionCompat.QueueItem item = playlistQueue.get(i);
        mListRowAdapter.add(item);
    }

    if (mListRow == null) {
        int queueSize = 0;
        MediaControllerCompat controller = getActivity().getSupportMediaController();
        if (controller != null && controller.getQueue() != null) {
            queueSize = controller.getQueue().size();
        }
        HeaderItem header = new HeaderItem(0, queueSize + " song(s) in this playlist");

        mPresenterSelector.addClassPresenter(ListRow.class, new ListRowPresenter());

        mListRow = new ListRow(header, mListRowAdapter);
        mRowsAdapter.add(mListRow);
    } else {
        mRowsAdapter.notifyArrayItemRangeChanged(mRowsAdapter.indexOf(mListRow), 1);
    }
}