public boolean hasResults() { return mRowsAdapter.size() > 0; }
public boolean hasResults() { return mResultsAdapter.size() > 0; }
@Override public void refreshFragmentScreenshot(int fragmentPosition) { mRowsAdapter.notifyArrayItemRangeChanged(0, mRowsAdapter.size()); }
@Override public void success(PlaylistsPager playlistsPager, Response response) { mAdapter.addAll(mAdapter.size(), playlistsPager.playlists.items); }
protected void setupTracksRows(List<TrackSimple> tracks) { if (mRowsAdapter.size() < 2) { mRowsAdapter.add(new TracksHeaderRow()); List<TrackRow> trackRows = new ArrayList<>(tracks.size()); for (TrackSimple track : tracks) { trackRows.add(new TrackRow(track)); } mRowsAdapter.addAll(mRowsAdapter.size(), trackRows); } }
@Override public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> glideAnimation) { Log.d(TAG, "details overview card image url ready: " + resource); row.setImageDrawable(resource); mAdapter.notifyArrayItemRangeChanged(0, mAdapter.size()); } });
@Override public void success(Pager<Album> albumPager, Response response) { for (Album album : albumPager.items) { try { AlbumType albumType = AlbumType.valueOf(album.album_type.toUpperCase()); // add to corresponding adapter ArrayObjectAdapter adapter = mAlbumsAdapters.get(albumType); adapter.add(adapter.size(), album); } catch (IllegalArgumentException e) { Log.d(TAG, String.format("Album Type %s is unknown", album.album_type), e); } } if (albumPager.next != null) { loadAlbums(albumPager.offset + Constants.PAGE_LIMIT); } }
@Override public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> glideAnimation) { mPlaybackControlsRow.setImageDrawable(resource); mRowsAdapter.notifyArrayItemRangeChanged(0, mRowsAdapter.size()); } });
@Override public void success(Pager<SavedAlbum> savedAlbumPager, Response response) { List<Album> albums = new ArrayList<>(savedAlbumPager.items.size()); List<ArtistSimple> artists = new ArrayList<>(savedAlbumPager.items.size()); // keep track of all artists to avoid duplicates if (offset == 0) { allArtistUris = new ArrayList<>(savedAlbumPager.items.size()); } for (SavedAlbum savedAlbum : savedAlbumPager.items) { albums.add(savedAlbum.album); for (ArtistSimple artist : savedAlbum.album.artists) { if (!allArtistUris.contains(artist.id)) { artists.add(artist); allArtistUris.add(artist.id); } } } mSavedAlbumsAdapter.addAll(savedAlbumPager.total, mSavedAlbumsAdapter.size(), albums); mSavedArtistsAdapter.addAll(mSavedArtistsAdapter.size(), artists); mMyAlbumsLoading = false; }
@Override public void onResourceReady( Bitmap bitmap, GlideAnimation<? super Bitmap> glideAnimation) { mDetailsBackground.setCoverBitmap(bitmap); mAdapter.notifyArrayItemRangeChanged(0, mAdapter.size()); } });
private void sortHeaders() { for (int i = 0; i < mRowsAdapter.size() - 1; i++) { for (int j = i + 1; j < mRowsAdapter.size() - 1; j++) { ListRow listRow1 = (ListRow) mRowsAdapter.get(i); ListRow listRow2 = (ListRow) mRowsAdapter.get(j); if ((int) listRow2.getHeaderItem().getName().charAt(0) < (int) listRow1.getHeaderItem().getName().charAt(0)) { int index1 = mRowsAdapter.indexOf(listRow1); int index2 = mRowsAdapter.indexOf(listRow2); mRowsAdapter.replace(index1, listRow2); mRowsAdapter.replace(index2, listRow1); } } } }
@Override public void onItemClicked(Presenter.ViewHolder itemViewHolder, Object item, RowPresenter.ViewHolder rowViewHolder, Row row) { if (item instanceof Track) { String trackUri = ((Track) item).uri; SpotifyPlayerController spotifyPlayerController = SpotifyTvApplication.getInstance().getSpotifyPlayerController(); if (spotifyPlayerController.getPlayingState().isCurrentTrack(trackUri)) { spotifyPlayerController.togglePauseResume(); } else { // get song and following ones List<String> trackUris = new ArrayList<>(); List<TrackSimple> tracks = new ArrayList<TrackSimple>(); for (int i = mTopTrackAdapter.indexOf(item); i < mTopTrackAdapter.size() && i < Constants.MAX_SONGS_PLAYED; i++) { tracks.add((TrackSimple) mTopTrackAdapter.get(i)); trackUris.add(((Track) mTopTrackAdapter.get(i)).uri); } spotifyPlayerController.play(trackUri, trackUris, tracks); } } else { SpotifyTvApplication.getInstance().launchDetailScreen(getActivity(), item); } } });
@Override public void onItemClicked(Presenter.ViewHolder itemViewHolder, Object item, RowPresenter.ViewHolder rowViewHolder, Row row) { if (item instanceof Track) { String trackUri = ((Track) item).uri; SpotifyPlayerController spotifyPlayerController = SpotifyTvApplication.getInstance().getSpotifyPlayerController(); if (spotifyPlayerController.getPlayingState().isCurrentTrack(trackUri)) { spotifyPlayerController.togglePauseResume(); } else { // get song and following ones List<TrackSimple> tracks = new ArrayList<>(); List<String> trackUris = new ArrayList<>(); for (int i = mTrackRowAdapter.indexOf(item); i < mTrackRowAdapter.size() && i < Constants.MAX_SONGS_PLAYED; i++) { tracks.add((TrackSimple) mTrackRowAdapter.get(i)); trackUris.add(((Track) mTrackRowAdapter.get(i)).uri); } spotifyPlayerController.play(trackUri, trackUris, tracks); } } else { SpotifyTvApplication.getInstance().launchDetailScreen(getActivity(), item); } } });
@SuppressWarnings("unused") @Subscribe public void onTrackChanged(OnTrackChanged onTrackChanged) { ContentState contentState = onTrackChanged.getPlayingState(); mNowPlayingAdapter.removeItems(0, mNowPlayingAdapter.size()); if (contentState.getCurrentTrack() != null) { mNowPlayingAdapter.add(0, contentState.getCurrentTrack()); } if (mNowPlayingListRow == null) { mNowPlayingListRow = new ListRow(mNowPlayingHeader, mNowPlayingAdapter); mRowsAdapter.add(0, mNowPlayingListRow); } }
private void setupNowPlaying() { mNowPlayingHeader = new HeaderItem(0, getString(R.string.now_playing)); TrackSimple currentTrack = SpotifyTvApplication.getInstance().getSpotifyPlayerController().getPlayingState().getCurrentTrack(); if (currentTrack != null) { mNowPlayingAdapter.removeItems(0, mNowPlayingAdapter.size()); mNowPlayingAdapter.add(currentTrack); mNowPlayingListRow = new ListRow(mNowPlayingHeader, mNowPlayingAdapter); mRowsAdapter.add(0, mNowPlayingListRow); } else { mNowPlayingListRow = null; } }
mLoadingCardAdapter.add(new LoadingCardView(getActivity(), R.style.LoadingCardStyle)); HeaderItem gridLoadingCardHeader = new HeaderItem(mRowsAdapter.size(), getString(R.string.header_text_loading_card)); mRowsAdapter.add(new ListRow(gridLoadingCardHeader, mLoadingCardAdapter)); mIconCardAdapter.addOption(iconItem); HeaderItem gridIconCardHeader = new HeaderItem(mRowsAdapter.size(), getString(R.string.header_text_icon_card)); mRowsAdapter.add(new ListRow(gridIconCardHeader, mIconCardAdapter)); mTagCardAdapter.add(tagCardView); HeaderItem gridTagCardHeader = new HeaderItem(mRowsAdapter.size(), getString(R.string.header_text_tag_card)); mRowsAdapter.add(new ListRow(gridTagCardHeader, mTagCardAdapter)); mVideoCardAdapter.addOption(post); HeaderItem gridLiveCardHeader = new HeaderItem(mRowsAdapter.size(), getString(R.string.header_text_live_card)); mRowsAdapter.add(new ListRow(gridLiveCardHeader, mVideoCardAdapter));