Progress and watched indicators

This commit is contained in:
Eric Reed committed 2014-12-10 15:34:23 -05:00
1 parent 49a012bb58
commit aa088537ac
4 files changed
+19 -4

No files matched your search

@@ -98,7 +98,7 @@ public class BaseItemDetailsFragment extends DetailsFragment {
DetailsOverviewRow row = new DetailsOverviewRow(BaseItemDetailsFragment.this.mBaseItem);
try {
Bitmap poster = Picasso.with(getActivity())
.load(Utils.getPrimaryImageUrl(BaseItemDetailsFragment.this.mBaseItem, mApiClient))
.load(Utils.getPrimaryImageUrl(BaseItemDetailsFragment.this.mBaseItem, mApiClient, true))
.resize(Utils.convertDpToPixel(getActivity().getApplicationContext(), DETAIL_THUMB_WIDTH),
Utils.convertDpToPixel(getActivity().getApplicationContext(), DETAIL_THUMB_HEIGHT))
.centerCrop()
@@ -90,7 +90,7 @@ public class CardPresenter extends Presenter {
//((ViewHolder) viewHolder).mCardView.setBadgeImage(mContext.getResources().getDrawable(
// R.drawable.videos_by_google_icon));
((ViewHolder) viewHolder).updateCardViewImage(Utils.getPrimaryImageUrl(baseItem, application.getConnectionManager().GetApiClient(baseItem)));
((ViewHolder) viewHolder).updateCardViewImage(Utils.getPrimaryImageUrl(baseItem, application.getConnectionManager().GetApiClient(baseItem),true));
}
}
@@ -285,7 +285,7 @@ public class PlaybackOverlayFragment extends android.support.v17.leanback.app.Pl
private void updatePlaybackRow() {
if (SHOW_IMAGE) {
mPlaybackControlsRowTarget = new PicassoPlaybackControlsRowTarget(mPlaybackControlsRow);
updateVideoImage(Utils.getPrimaryImageUrl(mPlaybackController.getCurrentlyPlayingItem(), mApplication.getApiClient()));
updateVideoImage(Utils.getPrimaryImageUrl(mPlaybackController.getCurrentlyPlayingItem(), mApplication.getApiClient(), false));
}
mRowsAdapter.notifyArrayItemRangeChanged(0, 1);
mPlaybackControlsRow.setTotalTime(getDuration());
@@ -13,6 +13,7 @@ import android.widget.Toast;
import android.widget.VideoView;
import java.net.URI;
import java.util.Arrays;
import mediabrowser.apiinteraction.ApiClient;
import mediabrowser.apiinteraction.EmptyResponse;
@@ -22,6 +23,7 @@ import mediabrowser.model.dlna.VideoOptions;
import mediabrowser.model.dlna.profiles.AndroidProfile;
import mediabrowser.model.dto.BaseItemDto;
import mediabrowser.model.dto.ImageOptions;
import mediabrowser.model.dto.UserItemDataDto;
import mediabrowser.model.entities.ImageType;
import mediabrowser.model.session.PlaybackProgressInfo;
import mediabrowser.model.session.PlaybackStartInfo;
@@ -143,10 +145,23 @@ public class Utils {
return Math.round((float) dp * density);
}
public static String getPrimaryImageUrl(BaseItemDto item, ApiClient apiClient) {
private static String[] ProgressIndicatorTypes = new String[] {"Episode", "Movie", "MusicVideo", "Video"};
public static String getPrimaryImageUrl(BaseItemDto item, ApiClient apiClient, Boolean showWatched) {
ImageOptions options = new ImageOptions();
options.setMaxWidth(320);
options.setImageType(ImageType.Primary);
UserItemDataDto userData = item.getUserData();
if (userData != null) {
if (Arrays.asList(ProgressIndicatorTypes).contains(item.getType()) && userData.getPlayedPercentage() != null
&& userData.getPlayedPercentage() > 0 && userData.getPlayedPercentage() < 99) {
Double pct = userData.getPlayedPercentage();
options.setPercentPlayed(pct.intValue());
}
if (showWatched) options.setAddPlayedIndicator(userData.getPlayed());
}
options.setTag(item.getImageTags().get(ImageType.Primary));
return apiClient.GetImageUrl(item, options);