Merge pull request #10066 from Stypox/swap-subchannel-avatar
Fix uploader and subchannel avatars being swapped and disable loading thumbnail message failure on content details page
This commit is contained in:
commit
72c6ed2804
3 changed files with 30 additions and 48 deletions
|
@ -61,7 +61,6 @@ import com.google.android.exoplayer2.PlaybackParameters;
|
||||||
import com.google.android.material.appbar.AppBarLayout;
|
import com.google.android.material.appbar.AppBarLayout;
|
||||||
import com.google.android.material.bottomsheet.BottomSheetBehavior;
|
import com.google.android.material.bottomsheet.BottomSheetBehavior;
|
||||||
import com.google.android.material.tabs.TabLayout;
|
import com.google.android.material.tabs.TabLayout;
|
||||||
import com.squareup.picasso.Callback;
|
|
||||||
|
|
||||||
import org.schabi.newpipe.App;
|
import org.schabi.newpipe.App;
|
||||||
import org.schabi.newpipe.R;
|
import org.schabi.newpipe.R;
|
||||||
|
@ -649,27 +648,6 @@ public final class VideoDetailFragment
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initThumbnailViews(@NonNull final StreamInfo info) {
|
|
||||||
PicassoHelper.loadDetailsThumbnail(info.getThumbnailUrl()).tag(PICASSO_VIDEO_DETAILS_TAG)
|
|
||||||
.into(binding.detailThumbnailImageView, new Callback() {
|
|
||||||
@Override
|
|
||||||
public void onSuccess() {
|
|
||||||
// nothing to do, the image was loaded correctly into the thumbnail
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onError(final Exception e) {
|
|
||||||
showSnackBarError(new ErrorInfo(e, UserAction.LOAD_IMAGE,
|
|
||||||
info.getThumbnailUrl(), info));
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
PicassoHelper.loadAvatar(info.getSubChannelAvatarUrl()).tag(PICASSO_VIDEO_DETAILS_TAG)
|
|
||||||
.into(binding.detailSubChannelThumbnailView);
|
|
||||||
PicassoHelper.loadAvatar(info.getUploaderAvatarUrl()).tag(PICASSO_VIDEO_DETAILS_TAG)
|
|
||||||
.into(binding.detailUploaderThumbnailView);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*//////////////////////////////////////////////////////////////////////////
|
/*//////////////////////////////////////////////////////////////////////////
|
||||||
// OwnStack
|
// OwnStack
|
||||||
//////////////////////////////////////////////////////////////////////////*/
|
//////////////////////////////////////////////////////////////////////////*/
|
||||||
|
@ -1480,12 +1458,9 @@ public final class VideoDetailFragment
|
||||||
binding.detailSubChannelThumbnailView.setVisibility(View.GONE);
|
binding.detailSubChannelThumbnailView.setVisibility(View.GONE);
|
||||||
|
|
||||||
if (!isEmpty(info.getSubChannelName())) {
|
if (!isEmpty(info.getSubChannelName())) {
|
||||||
displayBothUploaderAndSubChannel(info, activity);
|
displayBothUploaderAndSubChannel(info);
|
||||||
} else if (!isEmpty(info.getUploaderName())) {
|
|
||||||
displayUploaderAsSubChannel(info, activity);
|
|
||||||
} else {
|
} else {
|
||||||
binding.detailUploaderTextView.setVisibility(View.GONE);
|
displayUploaderAsSubChannel(info);
|
||||||
binding.detailUploaderThumbnailView.setVisibility(View.GONE);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
final Drawable buddyDrawable =
|
final Drawable buddyDrawable =
|
||||||
|
@ -1559,7 +1534,8 @@ public final class VideoDetailFragment
|
||||||
binding.detailSecondaryControlPanel.setVisibility(View.GONE);
|
binding.detailSecondaryControlPanel.setVisibility(View.GONE);
|
||||||
|
|
||||||
checkUpdateProgressInfo(info);
|
checkUpdateProgressInfo(info);
|
||||||
initThumbnailViews(info);
|
PicassoHelper.loadDetailsThumbnail(info.getThumbnailUrl()).tag(PICASSO_VIDEO_DETAILS_TAG)
|
||||||
|
.into(binding.detailThumbnailImageView);
|
||||||
showMetaInfoInTextView(info.getMetaInfo(), binding.detailMetaInfoTextView,
|
showMetaInfoInTextView(info.getMetaInfo(), binding.detailMetaInfoTextView,
|
||||||
binding.detailMetaInfoSeparator, disposables);
|
binding.detailMetaInfoSeparator, disposables);
|
||||||
|
|
||||||
|
@ -1596,27 +1572,30 @@ public final class VideoDetailFragment
|
||||||
noVideoStreams ? R.drawable.ic_headset_shadow : R.drawable.ic_play_arrow_shadow);
|
noVideoStreams ? R.drawable.ic_headset_shadow : R.drawable.ic_play_arrow_shadow);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void displayUploaderAsSubChannel(final StreamInfo info, final Context context) {
|
private void displayUploaderAsSubChannel(final StreamInfo info) {
|
||||||
binding.detailSubChannelTextView.setText(info.getUploaderName());
|
binding.detailSubChannelTextView.setText(info.getUploaderName());
|
||||||
binding.detailSubChannelTextView.setVisibility(View.VISIBLE);
|
binding.detailSubChannelTextView.setVisibility(View.VISIBLE);
|
||||||
binding.detailSubChannelTextView.setSelected(true);
|
binding.detailSubChannelTextView.setSelected(true);
|
||||||
|
|
||||||
if (info.getUploaderSubscriberCount() > -1) {
|
if (info.getUploaderSubscriberCount() > -1) {
|
||||||
binding.detailUploaderTextView.setText(
|
binding.detailUploaderTextView.setText(
|
||||||
Localization.shortSubscriberCount(context, info.getUploaderSubscriberCount()));
|
Localization.shortSubscriberCount(activity, info.getUploaderSubscriberCount()));
|
||||||
binding.detailUploaderTextView.setVisibility(View.VISIBLE);
|
binding.detailUploaderTextView.setVisibility(View.VISIBLE);
|
||||||
} else {
|
} else {
|
||||||
binding.detailUploaderTextView.setVisibility(View.GONE);
|
binding.detailUploaderTextView.setVisibility(View.GONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PicassoHelper.loadAvatar(info.getUploaderAvatarUrl()).tag(PICASSO_VIDEO_DETAILS_TAG)
|
||||||
|
.into(binding.detailSubChannelThumbnailView);
|
||||||
|
binding.detailSubChannelThumbnailView.setVisibility(View.VISIBLE);
|
||||||
|
binding.detailUploaderThumbnailView.setVisibility(View.GONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void displayBothUploaderAndSubChannel(final StreamInfo info, final Context context) {
|
private void displayBothUploaderAndSubChannel(final StreamInfo info) {
|
||||||
binding.detailSubChannelTextView.setText(info.getSubChannelName());
|
binding.detailSubChannelTextView.setText(info.getSubChannelName());
|
||||||
binding.detailSubChannelTextView.setVisibility(View.VISIBLE);
|
binding.detailSubChannelTextView.setVisibility(View.VISIBLE);
|
||||||
binding.detailSubChannelTextView.setSelected(true);
|
binding.detailSubChannelTextView.setSelected(true);
|
||||||
|
|
||||||
binding.detailSubChannelThumbnailView.setVisibility(View.VISIBLE);
|
|
||||||
|
|
||||||
final StringBuilder subText = new StringBuilder();
|
final StringBuilder subText = new StringBuilder();
|
||||||
if (!isEmpty(info.getUploaderName())) {
|
if (!isEmpty(info.getUploaderName())) {
|
||||||
subText.append(
|
subText.append(
|
||||||
|
@ -1627,7 +1606,7 @@ public final class VideoDetailFragment
|
||||||
subText.append(Localization.DOT_SEPARATOR);
|
subText.append(Localization.DOT_SEPARATOR);
|
||||||
}
|
}
|
||||||
subText.append(
|
subText.append(
|
||||||
Localization.shortSubscriberCount(context, info.getUploaderSubscriberCount()));
|
Localization.shortSubscriberCount(activity, info.getUploaderSubscriberCount()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (subText.length() > 0) {
|
if (subText.length() > 0) {
|
||||||
|
@ -1637,6 +1616,13 @@ public final class VideoDetailFragment
|
||||||
} else {
|
} else {
|
||||||
binding.detailUploaderTextView.setVisibility(View.GONE);
|
binding.detailUploaderTextView.setVisibility(View.GONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PicassoHelper.loadAvatar(info.getSubChannelAvatarUrl()).tag(PICASSO_VIDEO_DETAILS_TAG)
|
||||||
|
.into(binding.detailSubChannelThumbnailView);
|
||||||
|
binding.detailSubChannelThumbnailView.setVisibility(View.VISIBLE);
|
||||||
|
PicassoHelper.loadAvatar(info.getUploaderAvatarUrl()).tag(PICASSO_VIDEO_DETAILS_TAG)
|
||||||
|
.into(binding.detailUploaderThumbnailView);
|
||||||
|
binding.detailUploaderThumbnailView.setVisibility(View.VISIBLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void openDownloadDialog() {
|
public void openDownloadDialog() {
|
||||||
|
|
|
@ -267,23 +267,21 @@
|
||||||
android:layout_height="wrap_content">
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
<com.google.android.material.imageview.ShapeableImageView
|
<com.google.android.material.imageview.ShapeableImageView
|
||||||
android:id="@+id/detail_uploader_thumbnail_view"
|
android:id="@+id/detail_sub_channel_thumbnail_view"
|
||||||
android:layout_width="@dimen/video_item_detail_uploader_image_size"
|
android:layout_width="@dimen/video_item_detail_uploader_image_size"
|
||||||
android:layout_height="@dimen/video_item_detail_uploader_image_size"
|
android:layout_height="@dimen/video_item_detail_uploader_image_size"
|
||||||
android:contentDescription="@string/detail_uploader_thumbnail_view_description"
|
android:contentDescription="@string/detail_sub_channel_thumbnail_view_description"
|
||||||
android:src="@drawable/placeholder_person"
|
android:src="@drawable/placeholder_person"
|
||||||
app:shapeAppearance="@style/CircularImageView" />
|
app:shapeAppearance="@style/CircularImageView" />
|
||||||
|
|
||||||
<com.google.android.material.imageview.ShapeableImageView
|
<com.google.android.material.imageview.ShapeableImageView
|
||||||
android:id="@+id/detail_sub_channel_thumbnail_view"
|
android:id="@+id/detail_uploader_thumbnail_view"
|
||||||
android:layout_width="@dimen/video_item_detail_sub_channel_image_size"
|
android:layout_width="@dimen/video_item_detail_sub_channel_image_size"
|
||||||
android:layout_height="@dimen/video_item_detail_sub_channel_image_size"
|
android:layout_height="@dimen/video_item_detail_sub_channel_image_size"
|
||||||
android:layout_gravity="bottom|right"
|
android:layout_gravity="bottom|right"
|
||||||
android:contentDescription="@string/detail_sub_channel_thumbnail_view_description"
|
android:contentDescription="@string/detail_uploader_thumbnail_view_description"
|
||||||
android:src="@drawable/placeholder_person"
|
android:src="@drawable/placeholder_person"
|
||||||
android:visibility="gone"
|
app:shapeAppearance="@style/CircularImageView" />
|
||||||
app:shapeAppearance="@style/CircularImageView"
|
|
||||||
tools:visibility="visible" />
|
|
||||||
|
|
||||||
</FrameLayout>
|
</FrameLayout>
|
||||||
|
|
||||||
|
|
|
@ -254,24 +254,22 @@
|
||||||
android:layout_height="wrap_content">
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
<com.google.android.material.imageview.ShapeableImageView
|
<com.google.android.material.imageview.ShapeableImageView
|
||||||
android:id="@+id/detail_uploader_thumbnail_view"
|
android:id="@+id/detail_sub_channel_thumbnail_view"
|
||||||
android:layout_width="@dimen/video_item_detail_uploader_image_size"
|
android:layout_width="@dimen/video_item_detail_uploader_image_size"
|
||||||
android:layout_height="@dimen/video_item_detail_uploader_image_size"
|
android:layout_height="@dimen/video_item_detail_uploader_image_size"
|
||||||
android:contentDescription="@string/detail_uploader_thumbnail_view_description"
|
android:contentDescription="@string/detail_sub_channel_thumbnail_view_description"
|
||||||
android:src="@drawable/placeholder_person"
|
android:src="@drawable/placeholder_person"
|
||||||
app:shapeAppearance="@style/CircularImageView" />
|
app:shapeAppearance="@style/CircularImageView" />
|
||||||
|
|
||||||
<com.google.android.material.imageview.ShapeableImageView
|
<com.google.android.material.imageview.ShapeableImageView
|
||||||
android:id="@+id/detail_sub_channel_thumbnail_view"
|
android:id="@+id/detail_uploader_thumbnail_view"
|
||||||
android:layout_width="@dimen/video_item_detail_sub_channel_image_size"
|
android:layout_width="@dimen/video_item_detail_sub_channel_image_size"
|
||||||
android:layout_height="@dimen/video_item_detail_sub_channel_image_size"
|
android:layout_height="@dimen/video_item_detail_sub_channel_image_size"
|
||||||
android:layout_gravity="bottom|right"
|
android:layout_gravity="bottom|right"
|
||||||
android:contentDescription="@string/detail_sub_channel_thumbnail_view_description"
|
android:contentDescription="@string/detail_uploader_thumbnail_view_description"
|
||||||
android:src="@drawable/placeholder_person"
|
android:src="@drawable/placeholder_person"
|
||||||
android:visibility="gone"
|
|
||||||
app:shapeAppearance="@style/CircularImageView"
|
app:shapeAppearance="@style/CircularImageView"
|
||||||
tools:ignore="RtlHardcoded"
|
tools:ignore="RtlHardcoded" />
|
||||||
tools:visibility="visible" />
|
|
||||||
|
|
||||||
</FrameLayout>
|
</FrameLayout>
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue