android.support.v17.leanback.widget.PlaybackControlsRowPresenter

Here are the examples of the java api class android.support.v17.leanback.widget.PlaybackControlsRowPresenter taken from open source projects.

1. PlaybackOverlayFragment#setupRows()

Project: Vineyard
File: PlaybackOverlayFragment.java
private void setupRows() {
    ClassPresenterSelector ps = new ClassPresenterSelector();
    PlaybackControlsRowPresenter playbackControlsRowPresenter;
    if (SHOW_DETAIL) {
        playbackControlsRowPresenter = new PlaybackControlsRowPresenter(new DescriptionPresenter());
    } else {
        playbackControlsRowPresenter = new PlaybackControlsRowPresenter();
    }
    playbackControlsRowPresenter.setOnActionClickedListener(new OnActionClickedListener() {

        public void onActionClicked(Action action) {
            if (action.getId() == mPlayPauseAction.getId()) {
                togglePlayback(mPlayPauseAction.getIndex() == PlayPauseAction.PLAY);
            } else if (action.getId() == mSkipNextAction.getId()) {
                next(true);
            } else if (action.getId() == mSkipPreviousAction.getId()) {
                prev(true);
            } else if (action.getId() == mRepeatAction.getId()) {
                loopVideos();
            }
            if (action instanceof PlaybackControlsRow.MultiAction) {
                notifyChanged(action);
            }
        }
    });
    playbackControlsRowPresenter.setSecondaryActionsHidden(HIDE_MORE_ACTIONS);
    ps.addClassPresenter(PlaybackControlsRow.class, playbackControlsRowPresenter);
    ps.addClassPresenter(ListRow.class, new ListRowPresenter());
    mRowsAdapter = new ArrayObjectAdapter(ps);
    addPlaybackControlsRow();
    addOtherRows();
    setAdapter(mRowsAdapter);
}

2. TvPlaybackFragment#setupRows()

Project: android-UniversalMusicPlayer
File: TvPlaybackFragment.java
private void setupRows() {
    PlaybackControlsRowPresenter playbackControlsRowPresenter;
    playbackControlsRowPresenter = new PlaybackControlsRowPresenter(new DescriptionPresenter());
    playbackControlsRowPresenter.setOnActionClickedListener(new OnActionClickedListener() {

        public void onActionClicked(Action action) {
            if (getActivity() == null) {
                return;
            }
            MediaControllerCompat controller = getActivity().getSupportMediaController();
            if (controller == null) {
                return;
            }
            MediaControllerCompat.TransportControls controls = controller.getTransportControls();
            if (action.getId() == mPlayPauseAction.getId()) {
                if (mPlayPauseAction.getIndex() == PlayPauseAction.PLAY) {
                    controls.play();
                } else {
                    controls.pause();
                }
            } else if (action.getId() == mSkipNextAction.getId()) {
                controls.skipToNext();
                resetPlaybackRow();
            } else if (action.getId() == mSkipPreviousAction.getId()) {
                controls.skipToPrevious();
                resetPlaybackRow();
            }
            if (action instanceof PlaybackControlsRow.MultiAction) {
                ((PlaybackControlsRow.MultiAction) action).nextIndex();
                notifyChanged(action);
            }
        }
    });
    mPresenterSelector.addClassPresenter(PlaybackControlsRow.class, playbackControlsRowPresenter);
}

3. PlaybackControlHelper#createControlsRowAndPresenter()

Project: androidtv-Leanback
File: PlaybackControlHelper.java
@Override
public PlaybackControlsRowPresenter createControlsRowAndPresenter() {
    PlaybackControlsRowPresenter presenter = super.createControlsRowAndPresenter();
    ArrayObjectAdapter adapter = new ArrayObjectAdapter(new ControlButtonPresenterSelector());
    getControlsRow().setSecondaryActionsAdapter(adapter);
    mFastForwardAction = (PlaybackControlsRow.FastForwardAction) getPrimaryActionsAdapter().lookup(ACTION_FAST_FORWARD);
    mRewindAction = (PlaybackControlsRow.RewindAction) getPrimaryActionsAdapter().lookup(ACTION_REWIND);
    adapter.add(mThumbsDownAction);
    adapter.add(mRepeatAction);
    adapter.add(mThumbsUpAction);
    if (PlaybackOverlayActivity.supportsPictureInPicture(getContext())) {
        adapter.add(mPipAction);
    }
    presenter.setOnActionClickedListener(new OnActionClickedListener() {

        @Override
        public void onActionClicked(Action action) {
            dispatchAction(action);
        }
    });
    return presenter;
}

4. PTVPlaybackOverlayFragment#initialisePlaybackControlPresenter()

Project: popcorn-android-legacy
File: PTVPlaybackOverlayFragment.java
private void initialisePlaybackControlPresenter() {
    ClassPresenterSelector presenterSelector = new ClassPresenterSelector();
    mPlaybackControlsRowPresenter = new PlaybackControlsRowPresenter(new DescriptionPresenter());
    mPlaybackControlsRowPresenter.setSecondaryActionsHidden(false);
    presenterSelector.addClassPresenter(PlaybackControlsRow.class, mPlaybackControlsRowPresenter);
    presenterSelector.addClassPresenter(ListRow.class, new ListRowPresenter());
    mRowsAdapter = new ArrayObjectAdapter(presenterSelector);
    setAdapter(mRowsAdapter);
}

5. PlaybackOverlayFragment#onResume()

Project: androidtv-Leanback
File: PlaybackOverlayFragment.java
@Override
public void onResume() {
    super.onResume();
    // Set up UI
    Video video = getActivity().getIntent().getParcelableExtra(VideoDetailsActivity.VIDEO);
    if (!updateSelectedVideo(video)) {
        return;
    }
    mGlue = new PlaybackControlHelper(getContext(), this, mSelectedVideo);
    PlaybackControlsRowPresenter controlsRowPresenter = mGlue.createControlsRowAndPresenter();
    PlaybackControlsRow controlsRow = mGlue.getControlsRow();
    mMediaControllerCallback = mGlue.createMediaControllerCallback();
    mMediaController = getActivity().getMediaController();
    mMediaController.registerCallback(mMediaControllerCallback);
    ClassPresenterSelector ps = new ClassPresenterSelector();
    ps.addClassPresenter(PlaybackControlsRow.class, controlsRowPresenter);
    ps.addClassPresenter(ListRow.class, new ListRowPresenter());
    mRowsAdapter = new ArrayObjectAdapter(ps);
    mRowsAdapter.add(controlsRow);
    addOtherRows();
    updatePlaybackRow();
    setAdapter(mRowsAdapter);
    // Prepare the player and start playing the selected video.
    playVideo(mSelectedVideo, mAutoPlayExtras);
    // Start loading videos for the queue.
    Bundle args = new Bundle();
    args.putString(VideoContract.VideoEntry.COLUMN_CATEGORY, mSelectedVideo.category);
    getLoaderManager().initLoader(QUEUE_VIDEOS_LOADER, args, mCallbacks);
}