private FullWidthDetailsOverviewRowPresenter setupDetailsOverviewRowPresenter() { FullWidthDetailsOverviewRowPresenter mDetailsPresenter = new FullWidthDetailsOverviewRowPresenter( new EventDetailsDescriptionPresenter(getActivity()), new EventDetailsOverviewLogoPresenter()); mDetailsPresenter.setBackgroundColor(getResources().getColor(R.color.selected_background)); mDetailsPresenter.setInitialState(FullWidthDetailsOverviewRowPresenter.STATE_HALF); mDetailsPresenter.setAlignmentMode(FullWidthDetailsOverviewRowPresenter.ALIGN_MODE_START); FullWidthDetailsOverviewSharedElementHelper helper = new FullWidthDetailsOverviewSharedElementHelper(); helper.setSharedElementEnterTransition(getActivity(), EventDetailsActivity.SHARED_ELEMENT_NAME); mDetailsPresenter.setListener(helper); prepareEntranceTransition(); mDetailsPresenter.setOnActionClickedListener(mOnActionClickedListener); return mDetailsPresenter; }
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); BackgroundManager bgMngr = BackgroundManager.getInstance(getActivity()); bgMngr.attach(getActivity().getWindow()); bgMngr.setColor(getResources().getColor(R.color.leanback_background)); mShortcut = (Shortcut)getActivity().getIntent().getSerializableExtra(EXTRA_SHORTCUT); DetailsOverviewRow detailRow = new DetailsOverviewRow(mShortcut); detailRow.setImageScaleUpAllowed(false); addActions(detailRow); mDetailsRowPresenter = new FullWidthDetailsOverviewRowPresenter(new ShortcutDetailsPresenter()); mDetailsRowPresenter.setBackgroundColor(getResources().getColor(R.color.lightblue900)); mDetailsRowPresenter.setOnActionClickedListener(this); ArrayObjectAdapter adapter = new ArrayObjectAdapter(mDetailsRowPresenter); adapter.add(detailRow); setAdapter(adapter); }
@Provides @PerFragment public FullWidthDetailsOverviewSharedElementHelper provideHelper(Activity activity, PresenterSelector mPs, DetailsOverviewRow row, OnActionClickedListener listener) { FullWidthDetailsOverviewSharedElementHelper mHelper = new FullWidthDetailsOverviewSharedElementHelper(); mHelper.setSharedElementEnterTransition(activity, LiveDataDetailActivity.SHARED_ELEMENT_NAME); ((FullWidthDetailsOverviewRowPresenter) mPs.getPresenter(row)) .setListener(mHelper); ((FullWidthDetailsOverviewRowPresenter) mPs.getPresenter(row)) .setParticipatingEntranceTransition(false); ((FullWidthDetailsOverviewRowPresenter) mPs.getPresenter(row)) .setOnActionClickedListener(listener); return mHelper; }
private void setupDetailsOverviewRowPresenter() { // Set detail background. FullWidthDetailsOverviewRowPresenter detailsPresenter = new FullWidthDetailsOverviewRowPresenter(new DetailsDescriptionPresenter()); detailsPresenter.setBackgroundColor( ContextCompat.getColor(getActivity(), R.color.selected_background)); // Hook up transition element. FullWidthDetailsOverviewSharedElementHelper sharedElementHelper = new FullWidthDetailsOverviewSharedElementHelper(); sharedElementHelper.setSharedElementEnterTransition( getActivity(), DetailsActivity.SHARED_ELEMENT_NAME); detailsPresenter.setListener(sharedElementHelper); detailsPresenter.setParticipatingEntranceTransition(true); detailsPresenter.setOnActionClickedListener(new OnActionClickedListener() { @Override public void onActionClicked(Action action) { if (action.getId() == ACTION_WATCH_TRAILER) { Intent intent = new Intent(getActivity(), PlaybackActivity.class); intent.putExtra(DetailsActivity.MOVIE, mSelectedMovie); startActivity(intent); } else { Toast.makeText(getActivity(), action.toString(), Toast.LENGTH_SHORT).show(); } } }); mPresenterSelector.addClassPresenter(DetailsOverviewRow.class, detailsPresenter); }
private void setupAdapter() { // Set detail background and style. FullWidthDetailsOverviewRowPresenter detailsPresenter = new FullWidthDetailsOverviewRowPresenter(new DetailsDescriptionPresenter(), new MovieDetailsOverviewLogoPresenter()); detailsPresenter.setBackgroundColor( ContextCompat.getColor(getActivity(), R.color.selected_background)); detailsPresenter.setInitialState(FullWidthDetailsOverviewRowPresenter.STATE_HALF); // Hook up transition element. mHelper = new FullWidthDetailsOverviewSharedElementHelper(); mHelper.setSharedElementEnterTransition(getActivity(), VideoDetailsActivity.SHARED_ELEMENT_NAME); detailsPresenter.setListener(mHelper); detailsPresenter.setParticipatingEntranceTransition(false); prepareEntranceTransition(); detailsPresenter.setOnActionClickedListener(new OnActionClickedListener() { @Override public void onActionClicked(Action action) { if (action.getId() == ACTION_WATCH_TRAILER) { Intent intent = new Intent(getActivity(), PlaybackOverlayActivity.class); intent.putExtra(VideoDetailsActivity.VIDEO, mSelectedVideo); startActivity(intent); } else { Toast.makeText(getActivity(), action.toString(), Toast.LENGTH_SHORT).show(); } } }); mPresenterSelector = new ClassPresenterSelector(); mPresenterSelector.addClassPresenter(DetailsOverviewRow.class, detailsPresenter); mPresenterSelector.addClassPresenter(ListRow.class, new ListRowPresenter()); mAdapter = new ArrayObjectAdapter(mPresenterSelector); setAdapter(mAdapter); }
private void setupAdapter() { FullWidthDetailsOverviewRowPresenter detailsPresenter = new FullWidthDetailsOverviewRowPresenter( new DetailsDescriptionPresenter(), new MovieDetailsOverviewLogoPresenter()); detailsPresenter.setBackgroundColor( ContextCompat.getColor(getContext(), R.color.background_dark)); detailsPresenter.setInitialState(FullWidthDetailsOverviewRowPresenter.STATE_HALF); detailsPresenter.setOnActionClickedListener( new OnActionClickedListener() { @Override public void onActionClicked(Action action) { if (action.getId() == ACTION_WATCH) { Intent intent = PlaybackActivity.createIntent(getContext(), mMovie.getId()); startActivity(intent); } else { Toast.makeText(getActivity(), action.toString(), Toast.LENGTH_SHORT) .show(); } } }); ClassPresenterSelector mPresenterSelector = new ClassPresenterSelector(); mPresenterSelector.addClassPresenter(DetailsOverviewRow.class, detailsPresenter); mAdapter = new ArrayObjectAdapter(mPresenterSelector); setAdapter(mAdapter); }
@PerFragment @Provides @IntoMap @PresenterSelectorKey(DetailsOverviewRow.class) public Presenter provideDetailsOverviewRowPresenter() { DetailsDescriptionPresenter pre = new DetailsDescriptionPresenter(); return new FullWidthDetailsOverviewRowPresenter(pre); }
private void initUi() { FullWidthDetailsOverviewRowPresenter detailsPresenter = new FullWidthDetailsOverviewRowPresenter(new VideoDetailsPresenter()); ClassPresenterSelector selector = new ClassPresenterSelector(); selector.addClassPresenter(DetailsOverviewRow.class, detailsPresenter); selector.addClassPresenter(ListRow.class, new ListRowPresenter()); rows = new ArrayObjectAdapter(selector); setAdapter(rows); }
private void setupAdapter() { // Set detail background and style. FullWidthDetailsOverviewRowPresenter detailsPresenter = new FullWidthDetailsOverviewRowPresenter(new TVContactRequestDetailPresenter(), new TVContactRequestDetailsOverviewLogoPresenter()); detailsPresenter.setBackgroundColor( ContextCompat.getColor(getActivity(), R.color.color_primary_dark)); detailsPresenter.setInitialState(FullWidthDetailsOverviewRowPresenter.STATE_HALF); // Hook up transition element. FullWidthDetailsOverviewSharedElementHelper mHelper = new FullWidthDetailsOverviewSharedElementHelper(); mHelper.setSharedElementEnterTransition(getActivity(), TVContactRequestActivity.SHARED_ELEMENT_NAME); detailsPresenter.setListener(mHelper); detailsPresenter.setParticipatingEntranceTransition(false); prepareEntranceTransition(); detailsPresenter.setOnActionClickedListener(action -> { if (action.getId() == ACTION_ACCEPT) { presenter.acceptTrustRequest(mSelectedContactRequest); } else if (action.getId() == ACTION_REFUSE) { presenter.refuseTrustRequest(mSelectedContactRequest); } else if (action.getId() == ACTION_BLOCK) { presenter.blockTrustRequest(mSelectedContactRequest); } }); ClassPresenterSelector mPresenterSelector = new ClassPresenterSelector(); mPresenterSelector.addClassPresenter(DetailsOverviewRow.class, detailsPresenter); mPresenterSelector.addClassPresenter(ListRow.class, new ListRowPresenter()); mAdapter = new ArrayObjectAdapter(mPresenterSelector); setAdapter(mAdapter); }
private void setupAdapter() { // Set detail background and style. FullWidthDetailsOverviewRowPresenter detailsPresenter = new FullWidthDetailsOverviewRowPresenter(new DetailsDescriptionPresenter(), new MovieDetailsOverviewLogoPresenter()); detailsPresenter.setBackgroundColor( ContextCompat.getColor(getActivity(), R.color.selected_background)); detailsPresenter.setInitialState(FullWidthDetailsOverviewRowPresenter.STATE_HALF); // Hook up transition element. mHelper = new FullWidthDetailsOverviewSharedElementHelper(); mHelper.setSharedElementEnterTransition(getActivity(), VideoDetailsActivity.SHARED_ELEMENT_NAME); detailsPresenter.setListener(mHelper); detailsPresenter.setParticipatingEntranceTransition(false); prepareEntranceTransition(); detailsPresenter.setOnActionClickedListener(new OnActionClickedListener() { @Override public void onActionClicked(Action action) { if (action.getId() == ACTION_WATCH_TRAILER) { Intent intent = new Intent(getActivity(), PlaybackActivity.class); intent.putExtra(VideoDetailsActivity.VIDEO, mSelectedVideo); startActivity(intent); } else { Toast.makeText(getActivity(), action.toString(), Toast.LENGTH_SHORT).show(); } } }); mPresenterSelector = new ClassPresenterSelector(); mPresenterSelector.addClassPresenter(DetailsOverviewRow.class, detailsPresenter); mPresenterSelector.addClassPresenter(ListRow.class, new ListRowPresenter()); mAdapter = new ArrayObjectAdapter(mPresenterSelector); setAdapter(mAdapter); }
public FullWidthDetailsOverviewRowPresenter getParentPresenter() { return mParentPresenter; }
public FullWidthDetailsOverviewRowPresenter.ViewHolder getParentViewHolder() { return mParentViewHolder; }
@Override protected void onPostExecute(DetailsOverviewRow detailRow) { ClassPresenterSelector ps = new ClassPresenterSelector(); FullWidthDetailsOverviewRowPresenter detailsPresenter = new FullWidthDetailsOverviewRowPresenter(new DetailsDescriptionPresenter(getContext())); detailsPresenter.setBackgroundColor(ContextCompat.getColor(getContext(), R.color.primary)); detailsPresenter.setInitialState(FullWidthDetailsOverviewRowPresenter.STATE_FULL); detailsPresenter.setOnActionClickedListener(new OnActionClickedListener() { @Override public void onActionClicked(Action action) { if (action.getId() == ACTION_PLAY) { Intent intent = new Intent(getActivity(), PlayerActivity.class); intent.putExtra(Video.INTENT_EXTRA_VIDEO, selectedVideo); startActivity(intent); } else { Toast.makeText(getActivity(), action.toString(), Toast.LENGTH_SHORT).show(); } } }); ps.addClassPresenter(DetailsOverviewRow.class, detailsPresenter); ps.addClassPresenter(ListRow.class, new ListRowPresenter()); /** bonus code for adding related items to details fragment **/ // <START> ArrayObjectAdapter adapter = new ArrayObjectAdapter(ps); adapter.add(detailRow); String subcategories[] = { "You may also like" }; CursorObjectAdapter rowAdapter = new CursorObjectAdapter(new SinglePresenterSelector(new CardPresenter())); VideoDataManager manager = new VideoDataManager(getActivity(), getLoaderManager(), VideoItemContract.VideoItem.buildDirUri(), rowAdapter); manager.startDataLoading(); HeaderItem header = new HeaderItem(0, subcategories[0]); adapter.add(new ListRow(header, rowAdapter)); setAdapter(adapter); // <END> }
private void setupUi() { Bundle extras = getActivity().getIntent().getExtras(); Card.Type cardType = Card.Type.DEFAULT; if (extras != null && extras.containsKey("abouttype")) { int ordinal = extras.getInt("abouttype", 0); cardType = Card.Type.values()[ordinal]; } IconCard card = IconCardHelper.getAboutCardByType(getActivity(), cardType); ClassPresenterSelector selector = new ClassPresenterSelector(); FullWidthDetailsOverviewRowPresenter rowPresenter = new FullWidthDetailsOverviewRowPresenter( new AboutDetailsPresenter(getActivity())) { @Override protected RowPresenter.ViewHolder createRowViewHolder(ViewGroup parent) { // Customize Actionbar and Content by using custom colors. RowPresenter.ViewHolder viewHolder = super.createRowViewHolder(parent); View actionsView = viewHolder.view. findViewById(R.id.details_overview_actions_background); actionsView.setBackgroundColor(getActivity().getResources(). getColor(R.color.color_primary_dark)); View detailsView = viewHolder.view.findViewById(R.id.details_frame); detailsView.setBackgroundColor( getResources().getColor(R.color.color_primary_dark)); return viewHolder; } }; selector.addClassPresenter(DetailsOverviewRow.class, rowPresenter); selector.addClassPresenter(ListRow.class, new ListRowPresenter()); ArrayObjectAdapter mRowsAdapter = new ArrayObjectAdapter(selector); Resources res = getActivity().getResources(); DetailsOverviewRow detailsOverview = new DetailsOverviewRow( card); // Add images and action buttons to the details view detailsOverview.setImageDrawable(res.getDrawable(R.drawable.ic_logo_ring_white)); mRowsAdapter.add(detailsOverview); setAdapter(mRowsAdapter); initializeBackground(); }