/* This file is auto-generated from PlaybackControlGlue.java. DO NOT MODIFY. */ package android.support.v17.leanback.app; import android.content.Context; import android.support.v17.leanback.media.PlaybackGlueHost; import android.support.v17.leanback.widget.Action; import android.support.v17.leanback.widget.OnActionClickedListener; import android.support.v17.leanback.widget.OnItemViewClickedListener; import android.support.v17.leanback.widget.PlaybackRowPresenter; import android.support.v17.leanback.widget.Presenter; import android.support.v17.leanback.widget.Row; import android.support.v17.leanback.widget.RowPresenter; import android.view.InputEvent; import android.view.KeyEvent; import android.view.View; /** * @deprecated Use {@link android.support.v17.leanback.media.PlaybackControlGlue} and * {@link PlaybackSupportFragmentGlueHost} for {@link PlaybackSupportFragment}. */ @Deprecated public abstract class PlaybackControlSupportGlue extends PlaybackControlGlue { /** * The adapter key for the first custom control on the left side * of the predefined primary controls. */ public static final int ACTION_CUSTOM_LEFT_FIRST = PlaybackControlGlue.ACTION_CUSTOM_LEFT_FIRST; /** * The adapter key for the skip to previous control. */ public static final int ACTION_SKIP_TO_PREVIOUS = PlaybackControlGlue.ACTION_SKIP_TO_PREVIOUS; /** * The adapter key for the rewind control. */ public static final int ACTION_REWIND = PlaybackControlGlue.ACTION_REWIND; /** * The adapter key for the play/pause control. */ public static final int ACTION_PLAY_PAUSE = PlaybackControlGlue.ACTION_PLAY_PAUSE; /** * The adapter key for the fast forward control. */ public static final int ACTION_FAST_FORWARD = PlaybackControlGlue.ACTION_FAST_FORWARD; /** * The adapter key for the skip to next control. */ public static final int ACTION_SKIP_TO_NEXT = PlaybackControlGlue.ACTION_SKIP_TO_NEXT; /** * The adapter key for the first custom control on the right side * of the predefined primary controls. */ public static final int ACTION_CUSTOM_RIGHT_FIRST = PlaybackControlGlue.ACTION_CUSTOM_RIGHT_FIRST; /** * Invalid playback speed. */ public static final int PLAYBACK_SPEED_INVALID = PlaybackControlGlue.PLAYBACK_SPEED_INVALID; /** * Speed representing playback state that is paused. */ public static final int PLAYBACK_SPEED_PAUSED = PlaybackControlGlue.PLAYBACK_SPEED_PAUSED; /** * Speed representing playback state that is playing normally. */ public static final int PLAYBACK_SPEED_NORMAL = PlaybackControlGlue.PLAYBACK_SPEED_NORMAL; /** * The initial (level 0) fast forward playback speed. * The negative of this value is for rewind at the same speed. */ public static final int PLAYBACK_SPEED_FAST_L0 = PlaybackControlGlue.PLAYBACK_SPEED_FAST_L0; /** * The level 1 fast forward playback speed. * The negative of this value is for rewind at the same speed. */ public static final int PLAYBACK_SPEED_FAST_L1 = PlaybackControlGlue.PLAYBACK_SPEED_FAST_L1; /** * The level 2 fast forward playback speed. * The negative of this value is for rewind at the same speed. */ public static final int PLAYBACK_SPEED_FAST_L2 = PlaybackControlGlue.PLAYBACK_SPEED_FAST_L2; /** * The level 3 fast forward playback speed. * The negative of this value is for rewind at the same speed. */ public static final int PLAYBACK_SPEED_FAST_L3 = PlaybackControlGlue.PLAYBACK_SPEED_FAST_L3; /** * The level 4 fast forward playback speed. * The negative of this value is for rewind at the same speed. */ public static final int PLAYBACK_SPEED_FAST_L4 = PlaybackControlGlue.PLAYBACK_SPEED_FAST_L4; public PlaybackControlSupportGlue(Context context, int[] seekSpeeds) { this(context, null, seekSpeeds, seekSpeeds); } public PlaybackControlSupportGlue( Context context, int[] fastForwardSpeeds, int[] rewindSpeeds) { this(context, null, fastForwardSpeeds, rewindSpeeds); } public PlaybackControlSupportGlue( Context context, PlaybackOverlaySupportFragment fragment, int[] seekSpeeds) { this(context, fragment, seekSpeeds, seekSpeeds); } public PlaybackControlSupportGlue( Context context, PlaybackOverlaySupportFragment fragment, int[] fastForwardSpeeds, int[] rewindSpeeds) { super(context, fastForwardSpeeds, rewindSpeeds); setHost(fragment == null ? null : new PlaybackSupportGlueHostOld(fragment)); } @Override protected void onAttachedToHost(PlaybackGlueHost host) { super.onAttachedToHost(host); if (host instanceof PlaybackSupportGlueHostOld) { ((PlaybackSupportGlueHostOld) host).mGlue = this; } } static final class PlaybackSupportGlueHostOld extends PlaybackGlueHost { final PlaybackOverlaySupportFragment mFragment; PlaybackControlSupportGlue mGlue; OnActionClickedListener mActionClickedListener; public PlaybackSupportGlueHostOld(PlaybackOverlaySupportFragment fragment) { mFragment = fragment; mFragment.setOnItemViewClickedListener(new OnItemViewClickedListener() { @Override public void onItemClicked(Presenter.ViewHolder itemViewHolder, Object item, RowPresenter.ViewHolder rowViewHolder, Row row) { if (item instanceof Action && rowViewHolder instanceof PlaybackRowPresenter.ViewHolder && mActionClickedListener != null) { mActionClickedListener.onActionClicked((Action) item); } else if (mGlue != null && mGlue.getOnItemViewClickedListener() != null) { mGlue.getOnItemViewClickedListener().onItemClicked(itemViewHolder, item, rowViewHolder, row); } } }); } @Override public void setFadingEnabled(boolean enable) { mFragment.setFadingEnabled(enable); } @Override public void setOnKeyInterceptListener(final View.OnKeyListener onKeyListenerr) { mFragment.setEventHandler( new InputEventHandler() { @Override public boolean handleInputEvent(InputEvent event) { if (event instanceof KeyEvent) { KeyEvent keyEvent = (KeyEvent) event; return onKeyListenerr.onKey(null, keyEvent.getKeyCode(), keyEvent); } return false; } }); } @Override public void setOnActionClickedListener(final OnActionClickedListener listener) { mActionClickedListener = listener; } @Override public void setHostCallback(HostCallback callback) { mFragment.setHostCallback(callback); } @Override public void fadeOut() { mFragment.fadeOut(); } @Override public void notifyPlaybackRowChanged() { mGlue.onRowChanged(mGlue.getControlsRow()); } } }