mirror of
https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy.git
synced 2024-11-07 03:07:26 +01:00
Start adding Card Layout 2.
This commit is contained in:
parent
db2c4d6c8d
commit
874ecbbf72
@ -115,8 +115,9 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
private static final int VIEW_TYPE_POST_CARD_GALLERY_TYPE = 7;
|
private static final int VIEW_TYPE_POST_CARD_GALLERY_TYPE = 7;
|
||||||
private static final int VIEW_TYPE_POST_COMPACT = 8;
|
private static final int VIEW_TYPE_POST_COMPACT = 8;
|
||||||
private static final int VIEW_TYPE_POST_GALLERY = 9;
|
private static final int VIEW_TYPE_POST_GALLERY = 9;
|
||||||
private static final int VIEW_TYPE_ERROR = 10;
|
private static final int VIEW_TYPE_POST_CARD_2 = 10;
|
||||||
private static final int VIEW_TYPE_LOADING = 11;
|
private static final int VIEW_TYPE_ERROR = 11;
|
||||||
|
private static final int VIEW_TYPE_LOADING = 12;
|
||||||
|
|
||||||
private static final DiffUtil.ItemCallback<Post> DIFF_CALLBACK = new DiffUtil.ItemCallback<Post>() {
|
private static final DiffUtil.ItemCallback<Post> DIFF_CALLBACK = new DiffUtil.ItemCallback<Post>() {
|
||||||
@Override
|
@Override
|
||||||
@ -377,8 +378,10 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
return VIEW_TYPE_POST_CARD_TEXT_TYPE;
|
return VIEW_TYPE_POST_CARD_TEXT_TYPE;
|
||||||
} else if (mPostLayout == SharedPreferencesUtils.POST_LAYOUT_COMPACT) {
|
} else if (mPostLayout == SharedPreferencesUtils.POST_LAYOUT_COMPACT) {
|
||||||
return VIEW_TYPE_POST_COMPACT;
|
return VIEW_TYPE_POST_COMPACT;
|
||||||
} else {
|
} else if (mPostLayout == SharedPreferencesUtils.POST_LAYOUT_GALLERY) {
|
||||||
return VIEW_TYPE_POST_GALLERY;
|
return VIEW_TYPE_POST_GALLERY;
|
||||||
|
} else {
|
||||||
|
return VIEW_TYPE_POST_CARD_2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -407,6 +410,8 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
}
|
}
|
||||||
} else if (viewType == VIEW_TYPE_POST_GALLERY) {
|
} else if (viewType == VIEW_TYPE_POST_GALLERY) {
|
||||||
return new PostGalleryViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_post_gallery, parent, false));
|
return new PostGalleryViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_post_gallery, parent, false));
|
||||||
|
} else if (viewType == VIEW_TYPE_POST_CARD_2) {
|
||||||
|
return new PostCard2ViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_post_card_2_with_preview, parent, false));
|
||||||
} else if (viewType == VIEW_TYPE_ERROR) {
|
} else if (viewType == VIEW_TYPE_ERROR) {
|
||||||
return new ErrorViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_footer_error, parent, false));
|
return new ErrorViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_footer_error, parent, false));
|
||||||
} else {
|
} else {
|
||||||
@ -744,6 +749,81 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
}
|
}
|
||||||
((PostTextTypeViewHolder) holder).contentTextView.setText(post.getSelfTextPlainTrimmed());
|
((PostTextTypeViewHolder) holder).contentTextView.setText(post.getSelfTextPlainTrimmed());
|
||||||
}
|
}
|
||||||
|
} else if (holder instanceof PostCard2ViewHolder) {
|
||||||
|
if (post.getPostType() == Post.VIDEO_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).videoOrGifIndicatorImageView.setVisibility(View.VISIBLE);
|
||||||
|
((PostCard2ViewHolder) holder).typeTextView.setText(mActivity.getString(R.string.video));
|
||||||
|
} else if (post.getPostType() == Post.GIF_TYPE) {
|
||||||
|
if (!mAutoplay) {
|
||||||
|
((PostCard2ViewHolder) holder).videoOrGifIndicatorImageView.setVisibility(View.VISIBLE);
|
||||||
|
}
|
||||||
|
((PostCard2ViewHolder) holder).typeTextView.setText(mActivity.getString(R.string.gif));
|
||||||
|
} else if (post.getPostType() == Post.IMAGE_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).typeTextView.setText(mActivity.getString(R.string.image));
|
||||||
|
} else if (post.getPostType() == Post.LINK_TYPE || post.getPostType() == Post.NO_PREVIEW_LINK_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).typeTextView.setText(mActivity.getString(R.string.link));
|
||||||
|
((PostCard2ViewHolder) holder).linkTextView.setVisibility(View.VISIBLE);
|
||||||
|
String domain = Uri.parse(post.getUrl()).getHost();
|
||||||
|
((PostCard2ViewHolder) holder).linkTextView.setText(domain);
|
||||||
|
if (post.getPostType() == Post.NO_PREVIEW_LINK_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setVisibility(View.VISIBLE);
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setImageResource(R.drawable.ic_link);
|
||||||
|
}
|
||||||
|
} else if (post.getPostType() == Post.GALLERY_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).typeTextView.setText(mActivity.getString(R.string.gallery));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (post.getPostType() != Post.NO_PREVIEW_LINK_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).progressBar.setVisibility(View.VISIBLE);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (mDataSavingMode && mDisableImagePreview) {
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setVisibility(View.VISIBLE);
|
||||||
|
if (post.getPostType() == Post.VIDEO_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setImageResource(R.drawable.ic_outline_video_24dp);
|
||||||
|
((PostCard2ViewHolder) holder).videoOrGifIndicatorImageView.setVisibility(View.GONE);
|
||||||
|
} else if (post.getPostType() == Post.IMAGE_TYPE || post.getPostType() == Post.GIF_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setImageResource(R.drawable.ic_image_24dp);
|
||||||
|
((PostCard2ViewHolder) holder).videoOrGifIndicatorImageView.setVisibility(View.GONE);
|
||||||
|
} else if (post.getPostType() == Post.LINK_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setImageResource(R.drawable.ic_link);
|
||||||
|
} else if (post.getPostType() == Post.GALLERY_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setImageResource(R.drawable.ic_gallery_24dp);
|
||||||
|
}
|
||||||
|
} else if (mDataSavingMode && mOnlyDisablePreviewInVideoAndGifPosts && (post.getPostType() == Post.VIDEO_TYPE || post.getPostType() == Post.GIF_TYPE)) {
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setVisibility(View.VISIBLE);
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setImageResource(R.drawable.ic_outline_video_24dp);
|
||||||
|
((PostCard2ViewHolder) holder).videoOrGifIndicatorImageView.setVisibility(View.GONE);
|
||||||
|
} else {
|
||||||
|
Post.Preview preview = getSuitablePreview(post.getPreviews());
|
||||||
|
if (preview != null) {
|
||||||
|
((PostCard2ViewHolder) holder).imageWrapperRelativeLayout.setVisibility(View.VISIBLE);
|
||||||
|
if (preview.getPreviewWidth() <= 0 || preview.getPreviewHeight() <= 0) {
|
||||||
|
int height = (int) (400 * mScale);
|
||||||
|
((PostCard2ViewHolder) holder).imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
|
||||||
|
((PostCard2ViewHolder) holder).imageView.getLayoutParams().height = height;
|
||||||
|
preview.setPreviewWidth(mImageViewWidth);
|
||||||
|
preview.setPreviewHeight(height);
|
||||||
|
} else {
|
||||||
|
((PostCard2ViewHolder) holder).imageView
|
||||||
|
.setRatio((float) preview.getPreviewHeight() / preview.getPreviewWidth());
|
||||||
|
}
|
||||||
|
loadImage(holder, post, preview);
|
||||||
|
} else {
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setVisibility(View.VISIBLE);
|
||||||
|
if (post.getPostType() == Post.VIDEO_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setImageResource(R.drawable.ic_outline_video_24dp);
|
||||||
|
((PostCard2ViewHolder) holder).videoOrGifIndicatorImageView.setVisibility(View.GONE);
|
||||||
|
} else if (post.getPostType() == Post.IMAGE_TYPE || post.getPostType() == Post.GIF_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setImageResource(R.drawable.ic_image_24dp);
|
||||||
|
((PostCard2ViewHolder) holder).videoOrGifIndicatorImageView.setVisibility(View.GONE);
|
||||||
|
} else if (post.getPostType() == Post.LINK_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setImageResource(R.drawable.ic_link);
|
||||||
|
} else if (post.getPostType() == Post.GALLERY_TYPE) {
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setImageResource(R.drawable.ic_gallery_24dp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
mCallback.currentlyBindItem(holder.getBindingAdapterPosition());
|
mCallback.currentlyBindItem(holder.getBindingAdapterPosition());
|
||||||
}
|
}
|
||||||
@ -1369,6 +1449,44 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
imageRequestBuilder.into(((PostGalleryViewHolder) holder).imageView);
|
imageRequestBuilder.into(((PostGalleryViewHolder) holder).imageView);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else if (holder instanceof PostCard2ViewHolder) {
|
||||||
|
String url;
|
||||||
|
if (post.getPostType() == Post.GIF_TYPE && mAutoplay) {
|
||||||
|
url = post.getUrl();
|
||||||
|
} else {
|
||||||
|
url = preview.getPreviewUrl();
|
||||||
|
}
|
||||||
|
RequestBuilder<Drawable> imageRequestBuilder = mGlide.load(url).listener(new RequestListener<Drawable>() {
|
||||||
|
@Override
|
||||||
|
public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
|
||||||
|
((PostCard2ViewHolder) holder).progressBar.setVisibility(View.GONE);
|
||||||
|
((PostCard2ViewHolder) holder).errorRelativeLayout.setVisibility(View.VISIBLE);
|
||||||
|
((PostCard2ViewHolder) holder).errorRelativeLayout.setOnClickListener(view -> {
|
||||||
|
((PostCard2ViewHolder) holder).progressBar.setVisibility(View.VISIBLE);
|
||||||
|
((PostCard2ViewHolder) holder).errorRelativeLayout.setVisibility(View.GONE);
|
||||||
|
loadImage(holder, post, preview);
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
|
||||||
|
((PostCard2ViewHolder) holder).errorRelativeLayout.setVisibility(View.GONE);
|
||||||
|
((PostCard2ViewHolder) holder).progressBar.setVisibility(View.GONE);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if ((post.isNSFW() && mNeedBlurNSFW && !(post.getPostType() == Post.GIF_TYPE && mAutoplayNsfwVideos)) || post.isSpoiler() && mNeedBlurSpoiler) {
|
||||||
|
imageRequestBuilder.apply(RequestOptions.bitmapTransform(new BlurTransformation(50, 10)))
|
||||||
|
.into(((PostCard2ViewHolder) holder).imageView);
|
||||||
|
} else {
|
||||||
|
if (mImageViewWidth > preview.getPreviewWidth()) {
|
||||||
|
imageRequestBuilder.override(preview.getPreviewWidth(), preview.getPreviewHeight()).into(((PostCard2ViewHolder) holder).imageView);
|
||||||
|
} else {
|
||||||
|
imageRequestBuilder.into(((PostCard2ViewHolder) holder).imageView);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1587,6 +1705,14 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
((PostTextTypeViewHolder) holder).contentTextView.setText("");
|
((PostTextTypeViewHolder) holder).contentTextView.setText("");
|
||||||
((PostTextTypeViewHolder) holder).contentTextView.setTextColor(mPostContentColor);
|
((PostTextTypeViewHolder) holder).contentTextView.setTextColor(mPostContentColor);
|
||||||
((PostTextTypeViewHolder) holder).contentTextView.setVisibility(View.GONE);
|
((PostTextTypeViewHolder) holder).contentTextView.setVisibility(View.GONE);
|
||||||
|
} else if (holder instanceof PostCard2ViewHolder) {
|
||||||
|
mGlide.clear(((PostCard2ViewHolder) holder).imageView);
|
||||||
|
((PostCard2ViewHolder) holder).imageWrapperRelativeLayout.setVisibility(View.GONE);
|
||||||
|
((PostCard2ViewHolder) holder).errorRelativeLayout.setVisibility(View.GONE);
|
||||||
|
((PostCard2ViewHolder) holder).noPreviewLinkImageView.setVisibility(View.GONE);
|
||||||
|
((PostCard2ViewHolder) holder).progressBar.setVisibility(View.GONE);
|
||||||
|
((PostCard2ViewHolder) holder).videoOrGifIndicatorImageView.setVisibility(View.GONE);
|
||||||
|
((PostCard2ViewHolder) holder).linkTextView.setVisibility(View.GONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
mGlide.clear(((PostBaseViewHolder) holder).iconGifImageView);
|
mGlide.clear(((PostBaseViewHolder) holder).iconGifImageView);
|
||||||
@ -1786,7 +1912,6 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
}
|
}
|
||||||
|
|
||||||
public class PostBaseViewHolder extends RecyclerView.ViewHolder {
|
public class PostBaseViewHolder extends RecyclerView.ViewHolder {
|
||||||
MaterialCardView cardView;
|
|
||||||
AspectRatioGifImageView iconGifImageView;
|
AspectRatioGifImageView iconGifImageView;
|
||||||
TextView subredditTextView;
|
TextView subredditTextView;
|
||||||
TextView userTextView;
|
TextView userTextView;
|
||||||
@ -1813,8 +1938,7 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
super(itemView);
|
super(itemView);
|
||||||
}
|
}
|
||||||
|
|
||||||
void setBaseView(MaterialCardView cardView,
|
void setBaseView(AspectRatioGifImageView iconGifImageView,
|
||||||
AspectRatioGifImageView iconGifImageView,
|
|
||||||
TextView subredditTextView,
|
TextView subredditTextView,
|
||||||
TextView userTextView,
|
TextView userTextView,
|
||||||
ImageView stickiedPostImageView,
|
ImageView stickiedPostImageView,
|
||||||
@ -1835,7 +1959,6 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
TextView commentsCountTextView,
|
TextView commentsCountTextView,
|
||||||
ImageView saveButton,
|
ImageView saveButton,
|
||||||
ImageView shareButton) {
|
ImageView shareButton) {
|
||||||
this.cardView = cardView;
|
|
||||||
this.iconGifImageView = iconGifImageView;
|
this.iconGifImageView = iconGifImageView;
|
||||||
this.subredditTextView = subredditTextView;
|
this.subredditTextView = subredditTextView;
|
||||||
this.userTextView = userTextView;
|
this.userTextView = userTextView;
|
||||||
@ -1911,7 +2034,7 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
saveButton.setColorFilter(mPostIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
saveButton.setColorFilter(mPostIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
||||||
shareButton.setColorFilter(mPostIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
shareButton.setColorFilter(mPostIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
||||||
|
|
||||||
cardView.setOnClickListener(view -> {
|
itemView.setOnClickListener(view -> {
|
||||||
int position = getBindingAdapterPosition();
|
int position = getBindingAdapterPosition();
|
||||||
if (position >= 0 && canStartActivity) {
|
if (position >= 0 && canStartActivity) {
|
||||||
Post post = getItem(position);
|
Post post = getItem(position);
|
||||||
@ -2276,7 +2399,7 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
if (mAccessToken != null && !post.isRead() && mMarkPostsAsRead) {
|
if (mAccessToken != null && !post.isRead() && mMarkPostsAsRead) {
|
||||||
post.markAsRead(true);
|
post.markAsRead(true);
|
||||||
if (changePostItemColor) {
|
if (changePostItemColor) {
|
||||||
cardView.setBackgroundTintList(ColorStateList.valueOf(mReadPostCardViewBackgroundColor));
|
itemView.setBackgroundTintList(ColorStateList.valueOf(mReadPostCardViewBackgroundColor));
|
||||||
titleTextView.setTextColor(mReadPostTitleColor);
|
titleTextView.setTextColor(mReadPostTitleColor);
|
||||||
if (this instanceof PostTextTypeViewHolder) {
|
if (this instanceof PostTextTypeViewHolder) {
|
||||||
((PostTextTypeViewHolder) this).contentTextView.setTextColor(mReadPostContentColor);
|
((PostTextTypeViewHolder) this).contentTextView.setTextColor(mReadPostContentColor);
|
||||||
@ -2356,7 +2479,7 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
PostVideoAutoplayViewHolder(View itemView) {
|
PostVideoAutoplayViewHolder(View itemView) {
|
||||||
super(itemView);
|
super(itemView);
|
||||||
ButterKnife.bind(this, itemView);
|
ButterKnife.bind(this, itemView);
|
||||||
setBaseView(cardView,
|
setBaseView(
|
||||||
iconGifImageView,
|
iconGifImageView,
|
||||||
subredditTextView,
|
subredditTextView,
|
||||||
userTextView,
|
userTextView,
|
||||||
@ -2611,7 +2734,7 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
PostWithPreviewTypeViewHolder(View itemView) {
|
PostWithPreviewTypeViewHolder(View itemView) {
|
||||||
super(itemView);
|
super(itemView);
|
||||||
ButterKnife.bind(this, itemView);
|
ButterKnife.bind(this, itemView);
|
||||||
setBaseView(cardView,
|
setBaseView(
|
||||||
iconGifImageView,
|
iconGifImageView,
|
||||||
subredditTextView,
|
subredditTextView,
|
||||||
userTextView,
|
userTextView,
|
||||||
@ -2709,7 +2832,7 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
PostTextTypeViewHolder(View itemView) {
|
PostTextTypeViewHolder(View itemView) {
|
||||||
super(itemView);
|
super(itemView);
|
||||||
ButterKnife.bind(this, itemView);
|
ButterKnife.bind(this, itemView);
|
||||||
setBaseView(cardView,
|
setBaseView(
|
||||||
iconGifImageView,
|
iconGifImageView,
|
||||||
subredditTextView,
|
subredditTextView,
|
||||||
userTextView,
|
userTextView,
|
||||||
@ -3482,6 +3605,121 @@ public class PostRecyclerViewAdapter extends PagedListAdapter<Post, RecyclerView
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class PostCard2ViewHolder extends PostBaseViewHolder {
|
||||||
|
@BindView(R.id.card_view_item_post_card_2_with_preview)
|
||||||
|
LinearLayout cardView;
|
||||||
|
@BindView(R.id.icon_gif_image_view_item_post_card_2_with_preview)
|
||||||
|
AspectRatioGifImageView iconGifImageView;
|
||||||
|
@BindView(R.id.subreddit_name_text_view_item_post_card_2_with_preview)
|
||||||
|
TextView subredditTextView;
|
||||||
|
@BindView(R.id.user_text_view_item_post_card_2_with_preview)
|
||||||
|
TextView userTextView;
|
||||||
|
@BindView(R.id.stickied_post_image_view_item_post_card_2_with_preview)
|
||||||
|
ImageView stickiedPostImageView;
|
||||||
|
@BindView(R.id.post_time_text_view_item_post_card_2_with_preview)
|
||||||
|
TextView postTimeTextView;
|
||||||
|
@BindView(R.id.title_text_view_item_post_card_2_with_preview)
|
||||||
|
TextView titleTextView;
|
||||||
|
@BindView(R.id.type_text_view_item_post_card_2_with_preview)
|
||||||
|
CustomTextView typeTextView;
|
||||||
|
@BindView(R.id.archived_image_view_item_post_card_2_with_preview)
|
||||||
|
ImageView archivedImageView;
|
||||||
|
@BindView(R.id.locked_image_view_item_post_card_2_with_preview)
|
||||||
|
ImageView lockedImageView;
|
||||||
|
@BindView(R.id.crosspost_image_view_item_post_card_2_with_preview)
|
||||||
|
ImageView crosspostImageView;
|
||||||
|
@BindView(R.id.nsfw_text_view_item_post_card_2_with_preview)
|
||||||
|
CustomTextView nsfwTextView;
|
||||||
|
@BindView(R.id.spoiler_custom_text_view_item_post_card_2_with_preview)
|
||||||
|
CustomTextView spoilerTextView;
|
||||||
|
@BindView(R.id.flair_custom_text_view_item_post_card_2_with_preview)
|
||||||
|
CustomTextView flairTextView;
|
||||||
|
@BindView(R.id.awards_text_view_item_post_card_2_with_preview)
|
||||||
|
CustomTextView awardsTextView;
|
||||||
|
@BindView(R.id.link_text_view_item_post_card_2_with_preview)
|
||||||
|
TextView linkTextView;
|
||||||
|
@BindView(R.id.video_or_gif_indicator_image_view_item_post_card_2_with_preview)
|
||||||
|
ImageView videoOrGifIndicatorImageView;
|
||||||
|
@BindView(R.id.image_wrapper_relative_layout_item_post_card_2_with_preview)
|
||||||
|
MaterialCardView imageWrapperRelativeLayout;
|
||||||
|
@BindView(R.id.progress_bar_item_post_card_2_with_preview)
|
||||||
|
ProgressBar progressBar;
|
||||||
|
@BindView(R.id.image_view_item_post_card_2_with_preview)
|
||||||
|
AspectRatioGifImageView imageView;
|
||||||
|
@BindView(R.id.load_image_error_relative_layout_item_post_card_2_with_preview)
|
||||||
|
RelativeLayout errorRelativeLayout;
|
||||||
|
@BindView(R.id.load_image_error_text_view_item_post_card_2_with_preview)
|
||||||
|
TextView errorTextView;
|
||||||
|
@BindView(R.id.image_view_no_preview_gallery_item_post_card_2_with_preview)
|
||||||
|
ImageView noPreviewLinkImageView;
|
||||||
|
@BindView(R.id.bottom_constraint_layout_item_post_card_2_with_preview)
|
||||||
|
ConstraintLayout bottomConstraintLayout;
|
||||||
|
@BindView(R.id.plus_button_item_post_card_2_with_preview)
|
||||||
|
ImageView upvoteButton;
|
||||||
|
@BindView(R.id.score_text_view_item_post_card_2_with_preview)
|
||||||
|
TextView scoreTextView;
|
||||||
|
@BindView(R.id.minus_button_item_post_card_2_with_preview)
|
||||||
|
ImageView downvoteButton;
|
||||||
|
@BindView(R.id.comments_count_item_post_card_2_with_preview)
|
||||||
|
TextView commentsCountTextView;
|
||||||
|
@BindView(R.id.save_button_item_post_card_2_with_preview)
|
||||||
|
ImageView saveButton;
|
||||||
|
@BindView(R.id.share_button_item_post_card_2_with_preview)
|
||||||
|
ImageView shareButton;
|
||||||
|
@BindView(R.id.divider_item_post_card_2_with_preview)
|
||||||
|
View divider;
|
||||||
|
|
||||||
|
PostCard2ViewHolder(@NonNull View itemView) {
|
||||||
|
super(itemView);
|
||||||
|
ButterKnife.bind(this, itemView);
|
||||||
|
setBaseView(
|
||||||
|
iconGifImageView,
|
||||||
|
subredditTextView,
|
||||||
|
userTextView,
|
||||||
|
stickiedPostImageView,
|
||||||
|
postTimeTextView,
|
||||||
|
titleTextView,
|
||||||
|
typeTextView,
|
||||||
|
archivedImageView,
|
||||||
|
lockedImageView,
|
||||||
|
crosspostImageView,
|
||||||
|
nsfwTextView,
|
||||||
|
spoilerTextView,
|
||||||
|
flairTextView,
|
||||||
|
awardsTextView,
|
||||||
|
bottomConstraintLayout,
|
||||||
|
upvoteButton,
|
||||||
|
scoreTextView,
|
||||||
|
downvoteButton,
|
||||||
|
commentsCountTextView,
|
||||||
|
saveButton,
|
||||||
|
shareButton);
|
||||||
|
|
||||||
|
linkTextView.setTextColor(mSecondaryTextColor);
|
||||||
|
noPreviewLinkImageView.setBackgroundColor(mNoPreviewPostTypeBackgroundColor);
|
||||||
|
noPreviewLinkImageView.setColorFilter(mNoPreviewPostTypeIconTint, android.graphics.PorterDuff.Mode.SRC_IN);
|
||||||
|
progressBar.setIndeterminateTintList(ColorStateList.valueOf(mColorAccent));
|
||||||
|
errorTextView.setTextColor(mPrimaryTextColor);
|
||||||
|
divider.setBackgroundColor(mDividerColor);
|
||||||
|
|
||||||
|
imageView.setOnClickListener(view -> {
|
||||||
|
int position = getBindingAdapterPosition();
|
||||||
|
if (position < 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Post post = getItem(position);
|
||||||
|
if (post != null) {
|
||||||
|
markPostRead(post, true);
|
||||||
|
openMedia(post);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
noPreviewLinkImageView.setOnClickListener(view -> {
|
||||||
|
imageView.performClick();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class ErrorViewHolder extends RecyclerView.ViewHolder {
|
class ErrorViewHolder extends RecyclerView.ViewHolder {
|
||||||
@BindView(R.id.error_text_view_item_footer_error)
|
@BindView(R.id.error_text_view_item_footer_error)
|
||||||
TextView errorTextView;
|
TextView errorTextView;
|
||||||
|
@ -30,6 +30,8 @@ public class PostLayoutBottomSheetFragment extends RoundedBottomSheetDialogFragm
|
|||||||
TextView compactLayoutTextView;
|
TextView compactLayoutTextView;
|
||||||
@BindView(R.id.gallery_layout_text_view_post_layout_bottom_sheet_fragment)
|
@BindView(R.id.gallery_layout_text_view_post_layout_bottom_sheet_fragment)
|
||||||
TextView galleryLayoutTextView;
|
TextView galleryLayoutTextView;
|
||||||
|
@BindView(R.id.card_layout_2_text_view_post_layout_bottom_sheet_fragment)
|
||||||
|
TextView cardLayout2TextView;
|
||||||
private Activity activity;
|
private Activity activity;
|
||||||
public PostLayoutBottomSheetFragment() {
|
public PostLayoutBottomSheetFragment() {
|
||||||
// Required empty public constructor
|
// Required empty public constructor
|
||||||
@ -55,6 +57,10 @@ public class PostLayoutBottomSheetFragment extends RoundedBottomSheetDialogFragm
|
|||||||
((PostLayoutSelectionCallback) activity).postLayoutSelected(SharedPreferencesUtils.POST_LAYOUT_GALLERY);
|
((PostLayoutSelectionCallback) activity).postLayoutSelected(SharedPreferencesUtils.POST_LAYOUT_GALLERY);
|
||||||
dismiss();
|
dismiss();
|
||||||
});
|
});
|
||||||
|
cardLayout2TextView.setOnClickListener(view -> {
|
||||||
|
((PostLayoutSelectionCallback) activity).postLayoutSelected(SharedPreferencesUtils.POST_LAYOUT_CARD_2);
|
||||||
|
dismiss();
|
||||||
|
});
|
||||||
return rootView;
|
return rootView;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -65,6 +65,7 @@ public class SharedPreferencesUtils {
|
|||||||
public static final int POST_LAYOUT_CARD = 0;
|
public static final int POST_LAYOUT_CARD = 0;
|
||||||
public static final int POST_LAYOUT_COMPACT = 1;
|
public static final int POST_LAYOUT_COMPACT = 1;
|
||||||
public static final int POST_LAYOUT_GALLERY = 2;
|
public static final int POST_LAYOUT_GALLERY = 2;
|
||||||
|
public static final int POST_LAYOUT_CARD_2 = 3;
|
||||||
|
|
||||||
public static final String FRONT_PAGE_SCROLLED_POSITION_SHARED_PREFERENCES_FILE = "ml.docilealligator.infinityforreddit.front_page_scrolled_position";
|
public static final String FRONT_PAGE_SCROLLED_POSITION_SHARED_PREFERENCES_FILE = "ml.docilealligator.infinityforreddit.front_page_scrolled_position";
|
||||||
public static final String FRONT_PAGE_SCROLLED_POSITION_FRONT_PAGE_BASE = "_front_page";
|
public static final String FRONT_PAGE_SCROLLED_POSITION_FRONT_PAGE_BASE = "_front_page";
|
||||||
|
@ -60,6 +60,22 @@
|
|||||||
android:textSize="?attr/font_default"
|
android:textSize="?attr/font_default"
|
||||||
android:fontFamily="?attr/font_family" />
|
android:fontFamily="?attr/font_family" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/card_layout_2_text_view_post_layout_bottom_sheet_fragment"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="?attr/selectableItemBackground"
|
||||||
|
android:clickable="true"
|
||||||
|
android:focusable="true"
|
||||||
|
android:paddingStart="32dp"
|
||||||
|
android:paddingTop="16dp"
|
||||||
|
android:paddingEnd="32dp"
|
||||||
|
android:paddingBottom="16dp"
|
||||||
|
android:text="@string/post_layout_card_2"
|
||||||
|
android:textColor="?attr/primaryTextColor"
|
||||||
|
android:textSize="?attr/font_default"
|
||||||
|
android:fontFamily="?attr/font_family" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
</androidx.core.widget.NestedScrollView>
|
</androidx.core.widget.NestedScrollView>
|
371
app/src/main/res/layout/item_post_card_2_with_preview.xml
Normal file
371
app/src/main/res/layout/item_post_card_2_with_preview.xml
Normal file
@ -0,0 +1,371 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginBottom="8dp"
|
||||||
|
android:id="@+id/card_view_item_post_card_2_with_preview"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<com.google.android.material.card.MaterialCardView
|
||||||
|
android:id="@+id/image_wrapper_relative_layout_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
android:layout_marginEnd="16dp"
|
||||||
|
app:cardElevation="2dp"
|
||||||
|
app:cardCornerRadius="8dp"
|
||||||
|
android:visibility="gone">
|
||||||
|
|
||||||
|
<ml.docilealligator.infinityforreddit.customviews.AspectRatioGifImageView
|
||||||
|
android:id="@+id/image_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:adjustViewBounds="true"
|
||||||
|
android:scaleType="fitStart" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/video_or_gif_indicator_image_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_margin="16dp"
|
||||||
|
android:layout_gravity="start"
|
||||||
|
android:background="@drawable/play_button_round_background"
|
||||||
|
android:src="@drawable/ic_play_circle_36dp"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<ProgressBar
|
||||||
|
android:id="@+id/progress_bar_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_centerInParent="true" />
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/load_image_error_relative_layout_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_centerInParent="true"
|
||||||
|
android:visibility="gone">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/load_image_error_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:drawableTop="@drawable/ic_error_outline_black_24dp"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="@string/error_loading_image_tap_to_retry"
|
||||||
|
android:textSize="?attr/font_default"
|
||||||
|
android:fontFamily="?attr/font_family" />
|
||||||
|
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
</com.google.android.material.card.MaterialCardView>
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/image_view_no_preview_gallery_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="150dp"
|
||||||
|
android:scaleType="center"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:padding="16dp">
|
||||||
|
|
||||||
|
<ml.docilealligator.infinityforreddit.customviews.AspectRatioGifImageView
|
||||||
|
android:id="@+id/icon_gif_image_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:layout_height="24dp"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/subreddit_name_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:textSize="?attr/font_default"
|
||||||
|
android:fontFamily="?attr/font_family"
|
||||||
|
app:layout_constraintBottom_toTopOf="@id/user_text_view_item_post_card_2_with_preview"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/icon_gif_image_view_item_post_card_2_with_preview"
|
||||||
|
app:layout_constraintEnd_toStartOf="@id/stickied_post_image_view_item_post_card_2_with_preview"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constrainedWidth="true"
|
||||||
|
app:layout_constraintHorizontal_bias="0"/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/user_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:textSize="?attr/font_default"
|
||||||
|
android:fontFamily="?attr/font_family"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@+id/icon_gif_image_view_item_post_card_2_with_preview"
|
||||||
|
app:layout_constraintEnd_toStartOf="@id/stickied_post_image_view_item_post_card_2_with_preview"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/subreddit_name_text_view_item_post_card_2_with_preview"
|
||||||
|
app:layout_constraintHorizontal_bias="0"
|
||||||
|
app:layout_constrainedWidth="true" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/stickied_post_image_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:layout_height="24dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toStartOf="@+id/guideline2"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
tools:visibility="visible" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/post_time_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:gravity="end"
|
||||||
|
android:textSize="?attr/font_default"
|
||||||
|
android:fontFamily="?attr/font_family"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/guideline2"
|
||||||
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.Guideline
|
||||||
|
android:id="@+id/guideline2"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical"
|
||||||
|
app:layout_constraintGuide_percent="0.6" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/title_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingStart="16dp"
|
||||||
|
android:paddingEnd="16dp"
|
||||||
|
android:textSize="?attr/title_font_18"
|
||||||
|
android:fontFamily="?attr/title_font_family" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/content_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="16dp"
|
||||||
|
android:paddingStart="16dp"
|
||||||
|
android:paddingEnd="16dp"
|
||||||
|
android:maxLines="4"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:textSize="?attr/content_font_default"
|
||||||
|
android:fontFamily="?attr/content_font_family"
|
||||||
|
android:ellipsize="end" />
|
||||||
|
|
||||||
|
<com.nex3z.flowlayout.FlowLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:padding="16dp"
|
||||||
|
app:flChildSpacing="16dp"
|
||||||
|
app:flChildSpacingForLastRow="align"
|
||||||
|
app:flRowSpacing="8dp">
|
||||||
|
|
||||||
|
<com.libRG.CustomTextView
|
||||||
|
android:id="@+id/type_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:padding="4dp"
|
||||||
|
android:text="@string/gallery"
|
||||||
|
android:textSize="?attr/font_12"
|
||||||
|
android:fontFamily="?attr/font_family"
|
||||||
|
app:lib_setRadius="3dp"
|
||||||
|
app:lib_setRoundedView="true"
|
||||||
|
app:lib_setShape="rectangle" />
|
||||||
|
|
||||||
|
<com.libRG.CustomTextView
|
||||||
|
android:id="@+id/spoiler_custom_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:text="@string/spoiler"
|
||||||
|
android:textSize="?attr/font_12"
|
||||||
|
android:fontFamily="?attr/font_family"
|
||||||
|
android:padding="4dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
app:lib_setRadius="3dp"
|
||||||
|
app:lib_setRoundedView="true"
|
||||||
|
app:lib_setShape="rectangle" />
|
||||||
|
|
||||||
|
<com.libRG.CustomTextView
|
||||||
|
android:id="@+id/nsfw_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:padding="4dp"
|
||||||
|
android:text="@string/nsfw"
|
||||||
|
android:textSize="?attr/font_12"
|
||||||
|
android:fontFamily="?attr/font_family"
|
||||||
|
android:visibility="gone"
|
||||||
|
app:lib_setRadius="3dp"
|
||||||
|
app:lib_setRoundedView="true"
|
||||||
|
app:lib_setShape="rectangle" />
|
||||||
|
|
||||||
|
<com.libRG.CustomTextView
|
||||||
|
android:id="@+id/flair_custom_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:textSize="?attr/font_12"
|
||||||
|
android:fontFamily="?attr/font_family"
|
||||||
|
android:padding="4dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
app:lib_setRadius="3dp"
|
||||||
|
app:lib_setRoundedView="true"
|
||||||
|
app:lib_setShape="rectangle" />
|
||||||
|
|
||||||
|
<com.libRG.CustomTextView
|
||||||
|
android:id="@+id/awards_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:padding="4dp"
|
||||||
|
android:textSize="?attr/font_12"
|
||||||
|
android:fontFamily="?attr/font_family"
|
||||||
|
android:visibility="gone"
|
||||||
|
app:lib_setRadius="3dp"
|
||||||
|
app:lib_setRoundedView="true"
|
||||||
|
app:lib_setShape="rectangle" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/archived_image_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:layout_height="24dp"
|
||||||
|
android:src="@drawable/ic_archive_outline"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/locked_image_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:layout_height="24dp"
|
||||||
|
android:src="@drawable/ic_outline_lock_24dp"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/crosspost_image_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:layout_height="24dp"
|
||||||
|
android:src="@drawable/crosspost"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
</com.nex3z.flowlayout.FlowLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/link_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginBottom="16dp"
|
||||||
|
android:paddingStart="16dp"
|
||||||
|
android:paddingEnd="16dp"
|
||||||
|
android:textSize="?attr/font_12"
|
||||||
|
android:fontFamily="?attr/font_family"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:id="@+id/bottom_constraint_layout_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/plus_button_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:padding="12dp"
|
||||||
|
android:src="@drawable/ic_arrow_upward_grey_24dp"
|
||||||
|
android:background="?actionBarItemBackground"
|
||||||
|
android:clickable="true"
|
||||||
|
android:focusable="true"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/score_text_view_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="64dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:gravity="center"
|
||||||
|
android:textSize="?attr/font_12"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:fontFamily="?attr/font_family"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/plus_button_item_post_card_2_with_preview" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/minus_button_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:padding="12dp"
|
||||||
|
android:src="@drawable/ic_arrow_downward_grey_24dp"
|
||||||
|
android:background="?actionBarItemBackground"
|
||||||
|
android:clickable="true"
|
||||||
|
android:focusable="true"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/score_text_view_item_post_card_2_with_preview" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/comments_count_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:padding="12dp"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:textSize="?attr/font_12"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:fontFamily="?attr/font_family"
|
||||||
|
android:drawableStart="@drawable/ic_comment_grey_24dp"
|
||||||
|
android:drawablePadding="12dp"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/minus_button_item_post_card_2_with_preview" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/save_button_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:padding="12dp"
|
||||||
|
android:background="?actionBarItemBackground"
|
||||||
|
android:clickable="true"
|
||||||
|
android:focusable="true"
|
||||||
|
app:layout_constraintHorizontal_bias="1"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/comments_count_item_post_card_2_with_preview"
|
||||||
|
app:layout_constraintEnd_toStartOf="@id/share_button_item_post_card_2_with_preview" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/share_button_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:padding="12dp"
|
||||||
|
android:src="@drawable/ic_share_grey_24dp"
|
||||||
|
android:background="?actionBarItemBackground"
|
||||||
|
android:clickable="true"
|
||||||
|
android:focusable="true"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
<View
|
||||||
|
android:id="@+id/divider_item_post_card_2_with_preview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="1dp" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
@ -8,73 +8,67 @@
|
|||||||
app:cardElevation="2dp"
|
app:cardElevation="2dp"
|
||||||
app:cardCornerRadius="8dp">
|
app:cardCornerRadius="8dp">
|
||||||
|
|
||||||
<FrameLayout
|
<ProgressBar
|
||||||
|
android:id="@+id/progress_bar_item_post_gallery"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<ml.docilealligator.infinityforreddit.customviews.AspectRatioGifImageView
|
||||||
|
android:id="@+id/image_view_item_post_gallery"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content">
|
android:layout_height="wrap_content"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
<ProgressBar
|
<ImageView
|
||||||
android:id="@+id/progress_bar_item_post_gallery"
|
android:id="@+id/image_view_no_preview_item_post_gallery"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="150dp"
|
||||||
android:layout_gravity="center"
|
android:scaleType="center"
|
||||||
android:visibility="gone" />
|
android:background="@drawable/thumbnail_compact_layout_rounded_edge"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
<ml.docilealligator.infinityforreddit.customviews.AspectRatioGifImageView
|
<ImageView
|
||||||
android:id="@+id/image_view_item_post_gallery"
|
android:id="@+id/video_or_gif_indicator_image_view_item_post_gallery"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="36dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="36dp"
|
||||||
android:visibility="gone" />
|
android:layout_margin="16dp"
|
||||||
|
android:layout_gravity="start"
|
||||||
|
android:scaleType="center"
|
||||||
|
android:background="@drawable/play_button_round_background"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
<ImageView
|
<RelativeLayout
|
||||||
android:id="@+id/image_view_no_preview_item_post_gallery"
|
android:id="@+id/load_image_error_relative_layout_item_post_gallery"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="150dp"
|
android:layout_height="match_parent"
|
||||||
android:scaleType="center"
|
android:layout_gravity="center"
|
||||||
android:background="@drawable/thumbnail_compact_layout_rounded_edge"
|
android:visibility="gone">
|
||||||
android:visibility="gone" />
|
|
||||||
|
|
||||||
<ImageView
|
|
||||||
android:id="@+id/video_or_gif_indicator_image_view_item_post_gallery"
|
|
||||||
android:layout_width="36dp"
|
|
||||||
android:layout_height="36dp"
|
|
||||||
android:layout_margin="16dp"
|
|
||||||
android:layout_gravity="start"
|
|
||||||
android:scaleType="center"
|
|
||||||
android:background="@drawable/play_button_round_background"
|
|
||||||
android:visibility="gone" />
|
|
||||||
|
|
||||||
<RelativeLayout
|
|
||||||
android:id="@+id/load_image_error_relative_layout_item_post_gallery"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:layout_gravity="center"
|
|
||||||
android:visibility="gone">
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/load_image_error_text_view_item_gallery"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
app:drawableTopCompat="@drawable/ic_error_outline_black_24dp"
|
|
||||||
android:layout_gravity="center"
|
|
||||||
android:gravity="center"
|
|
||||||
android:text="@string/error_loading_image_tap_to_retry"
|
|
||||||
android:textSize="?attr/font_default"
|
|
||||||
android:fontFamily="?attr/font_family" />
|
|
||||||
|
|
||||||
</RelativeLayout>
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/title_text_view_item_post_gallery"
|
android:id="@+id/load_image_error_text_view_item_gallery"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:paddingTop="16dp"
|
app:drawableTopCompat="@drawable/ic_error_outline_black_24dp"
|
||||||
android:paddingBottom="16dp"
|
android:layout_gravity="center"
|
||||||
android:paddingStart="16dp"
|
android:gravity="center"
|
||||||
android:paddingEnd="16dp"
|
android:text="@string/error_loading_image_tap_to_retry"
|
||||||
android:textSize="?attr/title_font_18"
|
android:textSize="?attr/font_default"
|
||||||
android:fontFamily="?attr/title_font_family"
|
android:fontFamily="?attr/font_family" />
|
||||||
android:visibility="gone" />
|
|
||||||
|
|
||||||
</FrameLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/title_text_view_item_post_gallery"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingTop="16dp"
|
||||||
|
android:paddingBottom="16dp"
|
||||||
|
android:paddingStart="16dp"
|
||||||
|
android:paddingEnd="16dp"
|
||||||
|
android:textSize="?attr/title_font_18"
|
||||||
|
android:fontFamily="?attr/title_font_family"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
</com.google.android.material.card.MaterialCardView>
|
</com.google.android.material.card.MaterialCardView>
|
@ -101,19 +101,6 @@
|
|||||||
android:textSize="?attr/title_font_18"
|
android:textSize="?attr/title_font_18"
|
||||||
android:fontFamily="?attr/title_font_family" />
|
android:fontFamily="?attr/title_font_family" />
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/content_text_view_item_post_with_preview"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginTop="16dp"
|
|
||||||
android:paddingStart="16dp"
|
|
||||||
android:paddingEnd="16dp"
|
|
||||||
android:maxLines="4"
|
|
||||||
android:visibility="gone"
|
|
||||||
android:textSize="?attr/content_font_default"
|
|
||||||
android:fontFamily="?attr/content_font_family"
|
|
||||||
android:ellipsize="end" />
|
|
||||||
|
|
||||||
<com.nex3z.flowlayout.FlowLayout
|
<com.nex3z.flowlayout.FlowLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
@ -568,6 +568,7 @@
|
|||||||
<string name="post_layout_card">Card Layout</string>
|
<string name="post_layout_card">Card Layout</string>
|
||||||
<string name="post_layout_compact">Compact Layout</string>
|
<string name="post_layout_compact">Compact Layout</string>
|
||||||
<string name="post_layout_gallery">Gallery Layout</string>
|
<string name="post_layout_gallery">Gallery Layout</string>
|
||||||
|
<string name="post_layout_card_2">Card Layout 2</string>
|
||||||
|
|
||||||
<string name="elapsed_time_just_now">Just Now</string>
|
<string name="elapsed_time_just_now">Just Now</string>
|
||||||
<string name="elapsed_time_a_minute_ago">1 Minute</string>
|
<string name="elapsed_time_a_minute_ago">1 Minute</string>
|
||||||
|
Loading…
Reference in New Issue
Block a user