16193c12a1897723c87b41f4e304a8cd04deef2dcDake Gu/* This file is auto-generated from VerticalGridFragment.java. DO NOT MODIFY. */ 26193c12a1897723c87b41f4e304a8cd04deef2dcDake Gu 361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu/* 461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * Copyright (C) 2014 The Android Open Source Project 561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * 661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except 761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * in compliance with the License. You may obtain a copy of the License at 861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * 961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * http://www.apache.org/licenses/LICENSE-2.0 1061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * 1161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * Unless required by applicable law or agreed to in writing, software distributed under the License 1261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express 1361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * or implied. See the License for the specific language governing permissions and limitations under 1461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * the License. 1561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu */ 1661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gupackage android.support.v17.leanback.app; 1761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 1861905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.support.v17.leanback.R; 198403619efebe94666c0615c3fc85080a303acf80Dake Guimport android.support.v17.leanback.transition.TransitionHelper; 2061905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.support.v17.leanback.widget.BrowseFrameLayout; 21d586ba8825b418d9589436725bfdead30f0dc075Dake Guimport android.support.v17.leanback.widget.OnChildLaidOutListener; 2261905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.support.v17.leanback.widget.OnItemViewClickedListener; 2361905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.support.v17.leanback.widget.OnItemViewSelectedListener; 2461905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.support.v17.leanback.widget.Presenter; 2561905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.support.v17.leanback.widget.Row; 2661905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.support.v17.leanback.widget.RowPresenter; 2761905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.support.v17.leanback.widget.VerticalGridPresenter; 2861905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.support.v17.leanback.widget.ObjectAdapter; 2961905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.os.Bundle; 3061905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.util.Log; 3161905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.view.LayoutInflater; 3261905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.view.View; 3361905b0b52c50018dcaebcd79699c39b8f28d622Dake Guimport android.view.ViewGroup; 3461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 3561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu/** 3661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * A fragment for creating leanback vertical grids. 3761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * 3861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * <p>Renders a vertical grid of objects given a {@link VerticalGridPresenter} and 3961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * an {@link ObjectAdapter}. 4061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu */ 41786ba352397f44022617411936515fc9eb28d23fDake Gupublic class VerticalGridSupportFragment extends BaseSupportFragment { 4261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu private static final String TAG = "VerticalGridSupportFragment"; 4361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu private static boolean DEBUG = false; 4461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 4561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu private ObjectAdapter mAdapter; 4661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu private VerticalGridPresenter mGridPresenter; 4761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu private VerticalGridPresenter.ViewHolder mGridViewHolder; 4861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu private OnItemViewSelectedListener mOnItemViewSelectedListener; 4961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu private OnItemViewClickedListener mOnItemViewClickedListener; 50786ba352397f44022617411936515fc9eb28d23fDake Gu private Object mSceneAfterEntranceTransition; 5161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu private int mSelectedPosition = -1; 5261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 5361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu /** 5461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * Sets the grid presenter. 5561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu */ 5661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public void setGridPresenter(VerticalGridPresenter gridPresenter) { 5761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu if (gridPresenter == null) { 5861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu throw new IllegalArgumentException("Grid presenter may not be null"); 5961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 6061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mGridPresenter = gridPresenter; 61d586ba8825b418d9589436725bfdead30f0dc075Dake Gu mGridPresenter.setOnItemViewSelectedListener(mViewSelectedListener); 6261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu if (mOnItemViewClickedListener != null) { 6361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mGridPresenter.setOnItemViewClickedListener(mOnItemViewClickedListener); 6461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 6561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 6661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 6761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu /** 6861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * Returns the grid presenter. 6961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu */ 7061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public VerticalGridPresenter getGridPresenter() { 7161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu return mGridPresenter; 7261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 7361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 7461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu /** 7561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * Sets the object adapter for the fragment. 7661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu */ 7761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public void setAdapter(ObjectAdapter adapter) { 7861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mAdapter = adapter; 7961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu updateAdapter(); 8061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 8161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 8261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu /** 8361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * Returns the object adapter. 8461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu */ 8561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public ObjectAdapter getAdapter() { 8661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu return mAdapter; 8761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 8861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 89d586ba8825b418d9589436725bfdead30f0dc075Dake Gu final private OnItemViewSelectedListener mViewSelectedListener = 9061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu new OnItemViewSelectedListener() { 9161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu @Override 9261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public void onItemSelected(Presenter.ViewHolder itemViewHolder, Object item, 9361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu RowPresenter.ViewHolder rowViewHolder, Row row) { 9461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu int position = mGridViewHolder.getGridView().getSelectedPosition(); 95d586ba8825b418d9589436725bfdead30f0dc075Dake Gu if (DEBUG) Log.v(TAG, "grid selected position " + position); 96d586ba8825b418d9589436725bfdead30f0dc075Dake Gu gridOnItemSelected(position); 9761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu if (mOnItemViewSelectedListener != null) { 9861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mOnItemViewSelectedListener.onItemSelected(itemViewHolder, item, 9961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu rowViewHolder, row); 10061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 10161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 10261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu }; 10361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 104d586ba8825b418d9589436725bfdead30f0dc075Dake Gu final private OnChildLaidOutListener mChildLaidOutListener = 105d586ba8825b418d9589436725bfdead30f0dc075Dake Gu new OnChildLaidOutListener() { 106d586ba8825b418d9589436725bfdead30f0dc075Dake Gu @Override 107d586ba8825b418d9589436725bfdead30f0dc075Dake Gu public void onChildLaidOut(ViewGroup parent, View view, int position, long id) { 108d586ba8825b418d9589436725bfdead30f0dc075Dake Gu if (position == 0) { 109d586ba8825b418d9589436725bfdead30f0dc075Dake Gu showOrHideTitle(); 110d586ba8825b418d9589436725bfdead30f0dc075Dake Gu } 111d586ba8825b418d9589436725bfdead30f0dc075Dake Gu } 112d586ba8825b418d9589436725bfdead30f0dc075Dake Gu }; 113d586ba8825b418d9589436725bfdead30f0dc075Dake Gu 11461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu /** 11561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * Sets an item selection listener. 11661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu */ 11761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public void setOnItemViewSelectedListener(OnItemViewSelectedListener listener) { 11861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mOnItemViewSelectedListener = listener; 11961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 12061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 121d586ba8825b418d9589436725bfdead30f0dc075Dake Gu private void gridOnItemSelected(int position) { 12261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu if (position != mSelectedPosition) { 12361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mSelectedPosition = position; 124d586ba8825b418d9589436725bfdead30f0dc075Dake Gu showOrHideTitle(); 125d586ba8825b418d9589436725bfdead30f0dc075Dake Gu } 126d586ba8825b418d9589436725bfdead30f0dc075Dake Gu } 127d586ba8825b418d9589436725bfdead30f0dc075Dake Gu 128d586ba8825b418d9589436725bfdead30f0dc075Dake Gu private void showOrHideTitle() { 129d586ba8825b418d9589436725bfdead30f0dc075Dake Gu if (mGridViewHolder.getGridView().findViewHolderForAdapterPosition(mSelectedPosition) 130d586ba8825b418d9589436725bfdead30f0dc075Dake Gu == null) { 131d586ba8825b418d9589436725bfdead30f0dc075Dake Gu return; 132d586ba8825b418d9589436725bfdead30f0dc075Dake Gu } 133d586ba8825b418d9589436725bfdead30f0dc075Dake Gu if (!mGridViewHolder.getGridView().hasPreviousViewInSameRow(mSelectedPosition)) { 134e7246ef136ed686d8caf339d4d1fd8e37b499c6aCraig Stout showTitle(true); 135e7246ef136ed686d8caf339d4d1fd8e37b499c6aCraig Stout } else { 136e7246ef136ed686d8caf339d4d1fd8e37b499c6aCraig Stout showTitle(false); 13761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 13861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 13961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 14061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu /** 14161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * Sets an item clicked listener. 14261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu */ 14361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public void setOnItemViewClickedListener(OnItemViewClickedListener listener) { 14461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mOnItemViewClickedListener = listener; 14561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu if (mGridPresenter != null) { 14661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mGridPresenter.setOnItemViewClickedListener(mOnItemViewClickedListener); 14761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 14861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 14961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 15061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu /** 15161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * Returns the item clicked listener. 15261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu */ 15361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public OnItemViewClickedListener getOnItemViewClickedListener() { 15461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu return mOnItemViewClickedListener; 15561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 15661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 15761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu @Override 15861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public View onCreateView(LayoutInflater inflater, ViewGroup container, 15961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu Bundle savedInstanceState) { 16061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu ViewGroup root = (ViewGroup) inflater.inflate(R.layout.lb_vertical_grid_fragment, 16161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu container, false); 162a373804d10f93a9488adc35cf6ce44dce09b3778Dake Gu ViewGroup gridFrame = (ViewGroup) root.findViewById(R.id.grid_frame); 163a373804d10f93a9488adc35cf6ce44dce09b3778Dake Gu installTitleView(inflater, gridFrame, savedInstanceState); 164684f4a94f6f55b2abc5ed2677dfdfc9501dd6407susnata getProgressBarManager().setRootView(root); 16561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu return root; 16661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 16761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 16861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu @Override 16961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public void onViewCreated(View view, Bundle savedInstanceState) { 170e7246ef136ed686d8caf339d4d1fd8e37b499c6aCraig Stout super.onViewCreated(view, savedInstanceState); 17161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu ViewGroup gridDock = (ViewGroup) view.findViewById(R.id.browse_grid_dock); 17261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mGridViewHolder = mGridPresenter.onCreateViewHolder(gridDock); 17361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu gridDock.addView(mGridViewHolder.view); 174d586ba8825b418d9589436725bfdead30f0dc075Dake Gu mGridViewHolder.getGridView().setOnChildLaidOutListener(mChildLaidOutListener); 17561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 1768403619efebe94666c0615c3fc85080a303acf80Dake Gu mSceneAfterEntranceTransition = TransitionHelper.createScene(gridDock, new Runnable() { 177786ba352397f44022617411936515fc9eb28d23fDake Gu @Override 178786ba352397f44022617411936515fc9eb28d23fDake Gu public void run() { 179786ba352397f44022617411936515fc9eb28d23fDake Gu setEntranceTransitionState(true); 180786ba352397f44022617411936515fc9eb28d23fDake Gu } 181786ba352397f44022617411936515fc9eb28d23fDake Gu }); 182786ba352397f44022617411936515fc9eb28d23fDake Gu 18361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu updateAdapter(); 18461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 18561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 186e7246ef136ed686d8caf339d4d1fd8e37b499c6aCraig Stout private void setupFocusSearchListener() { 187e7246ef136ed686d8caf339d4d1fd8e37b499c6aCraig Stout BrowseFrameLayout browseFrameLayout = (BrowseFrameLayout) getView().findViewById( 188e7246ef136ed686d8caf339d4d1fd8e37b499c6aCraig Stout R.id.grid_frame); 189e7246ef136ed686d8caf339d4d1fd8e37b499c6aCraig Stout browseFrameLayout.setOnFocusSearchListener(getTitleHelper().getOnFocusSearchListener()); 190e7246ef136ed686d8caf339d4d1fd8e37b499c6aCraig Stout } 191e7246ef136ed686d8caf339d4d1fd8e37b499c6aCraig Stout 19261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu @Override 19361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public void onStart() { 19461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu super.onStart(); 195e7246ef136ed686d8caf339d4d1fd8e37b499c6aCraig Stout setupFocusSearchListener(); 196786ba352397f44022617411936515fc9eb28d23fDake Gu if (isEntranceTransitionEnabled()) { 197786ba352397f44022617411936515fc9eb28d23fDake Gu setEntranceTransitionState(false); 198786ba352397f44022617411936515fc9eb28d23fDake Gu } 19961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 20061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 20161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu @Override 20261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public void onDestroyView() { 20361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu super.onDestroyView(); 20461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mGridViewHolder = null; 20561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 20661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 20761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu /** 20861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu * Sets the selected item position. 20961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu */ 21061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu public void setSelectedPosition(int position) { 21161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mSelectedPosition = position; 21261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu if(mGridViewHolder != null && mGridViewHolder.getGridView().getAdapter() != null) { 21361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mGridViewHolder.getGridView().setSelectedPositionSmooth(position); 21461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 21561905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 21661905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu 21761905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu private void updateAdapter() { 21861905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu if (mGridViewHolder != null) { 21961905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mGridPresenter.onBindViewHolder(mGridViewHolder, mAdapter); 22061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu if (mSelectedPosition != -1) { 22161905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu mGridViewHolder.getGridView().setSelectedPosition(mSelectedPosition); 22261905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 22361905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 22461905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu } 225786ba352397f44022617411936515fc9eb28d23fDake Gu 226786ba352397f44022617411936515fc9eb28d23fDake Gu @Override 227786ba352397f44022617411936515fc9eb28d23fDake Gu protected Object createEntranceTransition() { 2288403619efebe94666c0615c3fc85080a303acf80Dake Gu return TransitionHelper.loadTransition(getActivity(), 229786ba352397f44022617411936515fc9eb28d23fDake Gu R.transition.lb_vertical_grid_entrance_transition); 230786ba352397f44022617411936515fc9eb28d23fDake Gu } 231786ba352397f44022617411936515fc9eb28d23fDake Gu 232786ba352397f44022617411936515fc9eb28d23fDake Gu @Override 233786ba352397f44022617411936515fc9eb28d23fDake Gu protected void runEntranceTransition(Object entranceTransition) { 2348403619efebe94666c0615c3fc85080a303acf80Dake Gu TransitionHelper.runTransition(mSceneAfterEntranceTransition, entranceTransition); 235786ba352397f44022617411936515fc9eb28d23fDake Gu } 236786ba352397f44022617411936515fc9eb28d23fDake Gu 237786ba352397f44022617411936515fc9eb28d23fDake Gu void setEntranceTransitionState(boolean afterTransition) { 238786ba352397f44022617411936515fc9eb28d23fDake Gu mGridPresenter.setEntranceTransitionState(mGridViewHolder, afterTransition); 239786ba352397f44022617411936515fc9eb28d23fDake Gu } 24061905b0b52c50018dcaebcd79699c39b8f28d622Dake Gu} 241