Continue adding Card Layout 3.

This commit is contained in:
Docile-Alligator
2023-09-12 23:41:44 -04:00
parent 9c8df6f5a1
commit 9383096b50
3 changed files with 607 additions and 430 deletions

View File

@ -95,6 +95,8 @@ import ml.docilealligator.infinityforreddit.customviews.LinearLayoutManagerBugFi
import ml.docilealligator.infinityforreddit.databinding.ItemPostCard2GalleryTypeBinding;
import ml.docilealligator.infinityforreddit.databinding.ItemPostCard3GalleryTypeBinding;
import ml.docilealligator.infinityforreddit.databinding.ItemPostCard3TextBinding;
import ml.docilealligator.infinityforreddit.databinding.ItemPostCard3VideoTypeAutoplayBinding;
import ml.docilealligator.infinityforreddit.databinding.ItemPostCard3VideoTypeAutoplayLegacyControllerBinding;
import ml.docilealligator.infinityforreddit.databinding.ItemPostCard3WithPreviewBinding;
import ml.docilealligator.infinityforreddit.databinding.ItemPostGalleryGalleryTypeBinding;
import ml.docilealligator.infinityforreddit.databinding.ItemPostGalleryTypeBinding;
@ -480,9 +482,15 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
if (viewType == VIEW_TYPE_POST_CARD_VIDEO_AUTOPLAY_TYPE) {
if (mDataSavingMode) {
return new PostWithPreviewTypeViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_post_with_preview, parent, false));
return new PostMaterial3CardWithPreviewViewHolder(ItemPostCard3WithPreviewBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false));
//return new PostWithPreviewTypeViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_post_with_preview, parent, false));
}
//return new PostVideoAutoplayViewHolder(LayoutInflater.from(parent.getContext()).inflate(mLegacyAutoplayVideoControllerUI ? R.layout.item_post_video_type_autoplay_legacy_controller : R.layout.item_post_video_type_autoplay, parent, false));
if (mLegacyAutoplayVideoControllerUI) {
return new PostMaterial3CardVideoAutoplayLegacyControllerViewHolder(ItemPostCard3VideoTypeAutoplayLegacyControllerBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false));
} else {
return new PostMaterial3CardVideoAutoplayViewHolder(ItemPostCard3VideoTypeAutoplayBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false));
}
return new PostVideoAutoplayViewHolder(LayoutInflater.from(parent.getContext()).inflate(mLegacyAutoplayVideoControllerUI ? R.layout.item_post_video_type_autoplay_legacy_controller : R.layout.item_post_video_type_autoplay, parent, false));
} else if (viewType == VIEW_TYPE_POST_CARD_WITH_PREVIEW_TYPE) {
//return new PostWithPreviewTypeViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_post_with_preview, parent, false));
return new PostMaterial3CardWithPreviewViewHolder(ItemPostCard3WithPreviewBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false));
@ -6074,10 +6082,9 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
if (changePostItemColor) {
itemView.setBackgroundTintList(ColorStateList.valueOf(mReadPostCardViewBackgroundColor));
titleTextView.setTextColor(mReadPostTitleColor);
//TODO fix this
/*if (this instanceof PostTextTypeViewHolder) {
((PostTextTypeViewHolder) this).contentTextView.setTextColor(mReadPostContentColor);
}*/
if (this instanceof PostMaterial3CardTextTypeViewHolder) {
((PostMaterial3CardTextTypeViewHolder) this).binding.contentTextViewItemPostCard3TextType.setTextColor(mReadPostContentColor);
}
}
if (mActivity != null && mActivity instanceof MarkPostAsReadInterface) {
((MarkPostAsReadInterface) mActivity).markPostAsRead(post);
@ -6087,6 +6094,352 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
}
}
class PostMaterial3CardBaseVideoAutoplayViewHolder extends PostMaterial3CardBaseViewHolder implements ToroPlayer {
AspectRatioFrameLayout aspectRatioFrameLayout;
GifImageView previewImageView;
ImageView errorLoadingGfycatImageView;
PlayerView videoPlayer;
ImageView muteButton;
ImageView fullscreenButton;
ImageView pauseButton;
ImageView playButton;
DefaultTimeBar progressBar;
@Nullable
Container container;
@Nullable
ExoPlayerViewHelper helper;
private Uri mediaUri;
private float volume;
public Call<String> fetchGfycatOrStreamableVideoCall;
private boolean isManuallyPaused;
PostMaterial3CardBaseVideoAutoplayViewHolder(View rootView,
AspectRatioGifImageView iconGifImageView,
TextView subredditTextView,
TextView userTextView,
ImageView stickiedPostImageView,
TextView postTimeTextView,
TextView titleTextView,
AspectRatioFrameLayout aspectRatioFrameLayout,
GifImageView previewImageView,
ImageView errorLoadingGfycatImageView,
PlayerView videoPlayer,
ImageView muteButton,
ImageView fullscreenButton,
ImageView pauseButton,
ImageView playButton,
DefaultTimeBar progressBar,
ConstraintLayout bottomConstraintLayout,
MaterialButtonToggleGroup voteButtonToggleGroup,
MaterialButton upvoteButton,
MaterialButton downvoteButton,
MaterialButton commentsCountButton,
MaterialButton saveButton,
MaterialButton shareButton) {
super(rootView);
setBaseView(
iconGifImageView,
subredditTextView,
userTextView,
stickiedPostImageView,
postTimeTextView,
titleTextView,
bottomConstraintLayout,
voteButtonToggleGroup,
upvoteButton,
downvoteButton,
commentsCountButton,
saveButton,
shareButton);
this.aspectRatioFrameLayout = aspectRatioFrameLayout;
this.previewImageView = previewImageView;
this.errorLoadingGfycatImageView = errorLoadingGfycatImageView;
this.videoPlayer = videoPlayer;
this.muteButton = muteButton;
this.fullscreenButton = fullscreenButton;
this.pauseButton = pauseButton;
this.playButton = playButton;
this.progressBar = progressBar;
aspectRatioFrameLayout.setOnClickListener(null);
muteButton.setOnClickListener(view -> {
if (helper != null) {
if (helper.getVolume() != 0) {
muteButton.setImageDrawable(ContextCompat.getDrawable(mActivity, R.drawable.ic_mute_white_rounded_24dp));
helper.setVolume(0f);
volume = 0f;
mFragment.videoAutoplayChangeMutingOption(true);
} else {
muteButton.setImageDrawable(ContextCompat.getDrawable(mActivity, R.drawable.ic_unmute_white_rounded_24dp));
helper.setVolume(1f);
volume = 1f;
mFragment.videoAutoplayChangeMutingOption(false);
}
}
});
fullscreenButton.setOnClickListener(view -> {
if (canStartActivity) {
canStartActivity = false;
int position = getBindingAdapterPosition();
if (position < 0) {
return;
}
Post post = getItem(position);
if (post != null) {
markPostRead(post, true);
Intent intent = new Intent(mActivity, ViewVideoActivity.class);
if (post.isImgur()) {
intent.setData(Uri.parse(post.getVideoUrl()));
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_TYPE, ViewVideoActivity.VIDEO_TYPE_IMGUR);
} else if (post.isGfycat()) {
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_TYPE, ViewVideoActivity.VIDEO_TYPE_GFYCAT);
intent.putExtra(ViewVideoActivity.EXTRA_GFYCAT_ID, post.getGfycatId());
if (post.isLoadGfycatOrStreamableVideoSuccess()) {
intent.setData(Uri.parse(post.getVideoUrl()));
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_DOWNLOAD_URL, post.getVideoDownloadUrl());
}
} else if (post.isRedgifs()) {
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_TYPE, ViewVideoActivity.VIDEO_TYPE_REDGIFS);
intent.putExtra(ViewVideoActivity.EXTRA_GFYCAT_ID, post.getGfycatId());
if (post.isLoadGfycatOrStreamableVideoSuccess()) {
intent.setData(Uri.parse(post.getVideoUrl()));
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_DOWNLOAD_URL, post.getVideoDownloadUrl());
}
} else if (post.isStreamable()) {
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_TYPE, ViewVideoActivity.VIDEO_TYPE_STREAMABLE);
intent.putExtra(ViewVideoActivity.EXTRA_STREAMABLE_SHORT_CODE, post.getStreamableShortCode());
} else {
intent.setData(Uri.parse(post.getVideoUrl()));
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_DOWNLOAD_URL, post.getVideoDownloadUrl());
intent.putExtra(ViewVideoActivity.EXTRA_SUBREDDIT, post.getSubredditName());
intent.putExtra(ViewVideoActivity.EXTRA_ID, post.getId());
}
intent.putExtra(ViewVideoActivity.EXTRA_POST_TITLE, post.getTitle());
if (helper != null) {
intent.putExtra(ViewVideoActivity.EXTRA_PROGRESS_SECONDS, helper.getLatestPlaybackInfo().getResumePosition());
}
intent.putExtra(ViewVideoActivity.EXTRA_IS_NSFW, post.isNSFW());
mActivity.startActivity(intent);
}
}
});
pauseButton.setOnClickListener(view -> {
pause();
isManuallyPaused = true;
savePlaybackInfo(getPlayerOrder(), getCurrentPlaybackInfo());
});
playButton.setOnClickListener(view -> {
isManuallyPaused = false;
play();
});
progressBar.addListener(new TimeBar.OnScrubListener() {
@Override
public void onScrubStart(TimeBar timeBar, long position) {
}
@Override
public void onScrubMove(TimeBar timeBar, long position) {
}
@Override
public void onScrubStop(TimeBar timeBar, long position, boolean canceled) {
if (!canceled) {
savePlaybackInfo(getPlayerOrder(), getCurrentPlaybackInfo());
}
}
});
previewImageView.setOnClickListener(view -> fullscreenButton.performClick());
videoPlayer.setOnClickListener(view -> {
if (mEasierToWatchInFullScreen && videoPlayer.isControllerVisible()) {
fullscreenButton.performClick();
}
});
}
void bindVideoUri(Uri videoUri) {
mediaUri = videoUri;
}
void setVolume(float volume) {
this.volume = volume;
}
void resetVolume() {
volume = 0f;
}
private void savePlaybackInfo(int order, @Nullable PlaybackInfo playbackInfo) {
if (container != null) container.savePlaybackInfo(order, playbackInfo);
}
@NonNull
@Override
public View getPlayerView() {
return videoPlayer;
}
@NonNull
@Override
public PlaybackInfo getCurrentPlaybackInfo() {
return helper != null && mediaUri != null ? helper.getLatestPlaybackInfo() : new PlaybackInfo();
}
@Override
public void initialize(@NonNull Container container, @NonNull PlaybackInfo playbackInfo) {
if (mediaUri == null) {
return;
}
if (this.container == null) {
this.container = container;
}
if (helper == null) {
helper = new ExoPlayerViewHelper(this, mediaUri, null, mExoCreator);
helper.addEventListener(new Playable.DefaultEventListener() {
@Override
public void onTracksChanged(@NonNull Tracks tracks) {
ImmutableList<Tracks.Group> trackGroups = tracks.getGroups();
if (!trackGroups.isEmpty()) {
for (int i = 0; i < trackGroups.size(); i++) {
String mimeType = trackGroups.get(i).getTrackFormat(0).sampleMimeType;
if (mimeType != null && mimeType.contains("audio")) {
if (mFragment.getMasterMutingOption() != null) {
volume = mFragment.getMasterMutingOption() ? 0f : 1f;
}
helper.setVolume(volume);
muteButton.setVisibility(View.VISIBLE);
if (volume != 0f) {
muteButton.setImageDrawable(ContextCompat.getDrawable(mActivity, R.drawable.ic_unmute_white_rounded_24dp));
} else {
muteButton.setImageDrawable(ContextCompat.getDrawable(mActivity, R.drawable.ic_mute_white_rounded_24dp));
}
break;
}
}
} else {
muteButton.setVisibility(View.GONE);
}
}
@Override
public void onRenderedFirstFrame() {
mGlide.clear(previewImageView);
previewImageView.setVisibility(View.GONE);
}
});
}
helper.initialize(container, playbackInfo);
}
@Override
public void play() {
if (helper != null && mediaUri != null) {
if (!isPlaying() && isManuallyPaused) {
helper.play();
pause();
helper.setVolume(volume);
} else {
helper.play();
}
}
}
@Override
public void pause() {
if (helper != null) helper.pause();
}
@Override
public boolean isPlaying() {
return helper != null && helper.isPlaying();
}
@Override
public void release() {
if (helper != null) {
helper.release();
helper = null;
}
isManuallyPaused = false;
container = null;
}
@Override
public boolean wantsToPlay() {
return canPlayVideo && mediaUri != null && ToroUtil.visibleAreaOffset(this, itemView.getParent()) >= mStartAutoplayVisibleAreaOffset;
}
@Override
public int getPlayerOrder() {
return getBindingAdapterPosition();
}
}
class PostMaterial3CardVideoAutoplayViewHolder extends PostMaterial3CardBaseVideoAutoplayViewHolder {
PostMaterial3CardVideoAutoplayViewHolder(ItemPostCard3VideoTypeAutoplayBinding binding) {
super(binding.getRoot(),
binding.iconGifImageViewItemPostCard3VideoTypeAutoplay,
binding.subredditNameTextViewItemPostCard3VideoTypeAutoplay,
binding.userTextViewItemPostCard3VideoTypeAutoplay,
binding.stickiedPostImageViewItemPostCard3VideoTypeAutoplay,
binding.postTimeTextViewItemPostCard3VideoTypeAutoplay,
binding.titleTextViewItemPostCard3VideoTypeAutoplay,
binding.aspectRatioFrameLayoutItemPostCard3VideoTypeAutoplay,
binding.previewImageViewItemPostCard3VideoTypeAutoplay,
binding.errorLoadingGfycatImageViewItemPostCard3VideoTypeAutoplay,
binding.playerViewItemPostCard3VideoTypeAutoplay,
binding.getRoot().findViewById(R.id.mute_exo_playback_control_view),
binding.getRoot().findViewById(R.id.fullscreen_exo_playback_control_view),
binding.getRoot().findViewById(R.id.exo_pause),
binding.getRoot().findViewById(R.id.exo_play),
binding.getRoot().findViewById(R.id.exo_progress),
binding.bottomConstraintLayoutItemPostCard3VideoTypeAutoplay,
binding.voteButtonToggleItemPostCard3VideoTypeAutoplay,
binding.upvoteButtonItemPostCard3VideoTypeAutoplay,
binding.downvoteButtonItemPostCard3VideoTypeAutoplay,
binding.commentsCountButtonItemPostCard3VideoTypeAutoplay,
binding.saveButtonItemPostCard3VideoTypeAutoplay,
binding.shareButtonItemPostCard3VideoTypeAutoplay);
}
}
class PostMaterial3CardVideoAutoplayLegacyControllerViewHolder extends PostMaterial3CardBaseVideoAutoplayViewHolder {
PostMaterial3CardVideoAutoplayLegacyControllerViewHolder(ItemPostCard3VideoTypeAutoplayLegacyControllerBinding binding) {
super(binding.getRoot(),
binding.iconGifImageViewItemPostCard3VideoTypeAutoplay,
binding.subredditNameTextViewItemPostCard3VideoTypeAutoplay,
binding.userTextViewItemPostCard3VideoTypeAutoplay,
binding.stickiedPostImageViewItemPostCard3VideoTypeAutoplay,
binding.postTimeTextViewItemPostCard3VideoTypeAutoplay,
binding.titleTextViewItemPostCard3VideoTypeAutoplay,
binding.aspectRatioFrameLayoutItemPostCard3VideoTypeAutoplay,
binding.previewImageViewItemPostCard3VideoTypeAutoplay,
binding.errorLoadingGfycatImageViewItemPostCard3VideoTypeAutoplay,
binding.playerViewItemPostCard3VideoTypeAutoplay,
binding.getRoot().findViewById(R.id.mute_exo_playback_control_view),
binding.getRoot().findViewById(R.id.fullscreen_exo_playback_control_view),
binding.getRoot().findViewById(R.id.exo_pause),
binding.getRoot().findViewById(R.id.exo_play),
binding.getRoot().findViewById(R.id.exo_progress),
binding.bottomConstraintLayoutItemPostCard3VideoTypeAutoplay,
binding.voteButtonToggleItemPostCard3VideoTypeAutoplay,
binding.upvoteButtonItemPostCard3VideoTypeAutoplay,
binding.downvoteButtonItemPostCard3VideoTypeAutoplay,
binding.commentsCountButtonItemPostCard3VideoTypeAutoplay,
binding.saveButtonItemPostCard3VideoTypeAutoplay,
binding.shareButtonItemPostCard3VideoTypeAutoplay);
}
}
public class PostMaterial3CardWithPreviewViewHolder extends PostMaterial3CardBaseViewHolder {
ItemPostCard3WithPreviewBinding binding;

View File

@ -4,8 +4,11 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:tools="http://schemas.android.com/tools"
android:layout_margin="8dp"
app:cardCornerRadius="16dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
app:cardCornerRadius="12dp"
app:cardBackgroundColor="#FBEEFC"
style="?attr/materialCardViewFilledStyle">
@ -14,13 +17,47 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<com.google.android.exoplayer2.ui.AspectRatioFrameLayout
android:id="@+id/aspect_ratio_frame_layout_item_post_card_3_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="0dp"
android:background="#000000"
app:resize_mode="fixed_width">
<com.google.android.exoplayer2.ui.PlayerView
android:id="@+id/player_view_item_post_card_3_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:show_timeout="1500"
app:auto_show="false"
app:controller_layout_id="@layout/exo_autoplay_playback_control_view" />
<pl.droidsonroids.gif.GifImageView
android:id="@+id/preview_image_view_item_post_card_3_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitStart"
android:visibility="gone" />
<ImageView
android:id="@+id/error_loading_gfycat_image_view_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="16dp"
android:layout_gravity="center"
android:background="@drawable/play_button_round_background"
android:src="@drawable/ic_error_white_36dp"
android:visibility="gone" />
</com.google.android.exoplayer2.ui.AspectRatioFrameLayout>
<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_video_type_autoplay"
android:id="@+id/icon_gif_image_view_item_post_card_3_video_type_autoplay"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_gravity="center"
@ -29,7 +66,7 @@
app:layout_constraintTop_toTopOf="parent"/>
<TextView
android:id="@+id/subreddit_name_text_view_item_post_video_type_autoplay"
android:id="@+id/subreddit_name_text_view_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
@ -37,15 +74,15 @@
android:layout_marginEnd="8dp"
android:textSize="?attr/font_default"
android:fontFamily="?attr/font_family"
app:layout_constraintBottom_toTopOf="@id/user_text_view_item_post_video_type_autoplay"
app:layout_constraintStart_toEndOf="@id/icon_gif_image_view_item_post_video_type_autoplay"
app:layout_constraintEnd_toStartOf="@id/stickied_post_image_view_item_post_video_type_autoplay"
app:layout_constraintBottom_toTopOf="@id/user_text_view_item_post_card_3_video_type_autoplay"
app:layout_constraintStart_toEndOf="@id/icon_gif_image_view_item_post_card_3_video_type_autoplay"
app:layout_constraintEnd_toStartOf="@id/stickied_post_image_view_item_post_card_3_video_type_autoplay"
app:layout_constraintTop_toTopOf="parent"
app:layout_constrainedWidth="true"
app:layout_constraintHorizontal_bias="0" />
<TextView
android:id="@+id/user_text_view_item_post_video_type_autoplay"
android:id="@+id/user_text_view_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
@ -53,14 +90,14 @@
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_video_type_autoplay"
app:layout_constraintEnd_toStartOf="@id/stickied_post_image_view_item_post_video_type_autoplay"
app:layout_constraintTop_toBottomOf="@+id/subreddit_name_text_view_item_post_video_type_autoplay"
app:layout_constraintStart_toEndOf="@+id/icon_gif_image_view_item_post_card_3_video_type_autoplay"
app:layout_constraintEnd_toStartOf="@id/stickied_post_image_view_item_post_card_3_video_type_autoplay"
app:layout_constraintTop_toBottomOf="@+id/subreddit_name_text_view_item_post_card_3_video_type_autoplay"
app:layout_constraintHorizontal_bias="0"
app:layout_constrainedWidth="true" />
<ImageView
android:id="@+id/stickied_post_image_view_item_post_video_type_autoplay"
android:id="@+id/stickied_post_image_view_item_post_card_3_video_type_autoplay"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginEnd="8dp"
@ -71,7 +108,7 @@
tools:visibility="visible" />
<TextView
android:id="@+id/post_time_text_view_item_post_video_type_autoplay"
android:id="@+id/post_time_text_view_item_post_card_3_video_type_autoplay"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:gravity="end"
@ -92,7 +129,7 @@
</androidx.constraintlayout.widget.ConstraintLayout>
<TextView
android:id="@+id/title_text_view_item_post_video_type_autoplay"
android:id="@+id/title_text_view_item_post_card_3_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingStart="16dp"
@ -100,219 +137,94 @@
android:textSize="?attr/title_font_18"
android:fontFamily="?attr/title_font_family" />
<com.nex3z.flowlayout.FlowLayout
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/bottom_constraint_layout_item_post_card_3_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
app:flChildSpacing="16dp"
app:flChildSpacingForLastRow="align"
app:flRowSpacing="8dp">
android:padding="8dp">
<com.libRG.CustomTextView
android:id="@+id/type_text_view_item_post_video_type_autoplay"
<com.google.android.material.button.MaterialButtonToggleGroup
android:id="@+id/vote_button_toggle_item_post_card_3_video_type_autoplay"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:singleSelection="true"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent">
<com.google.android.material.button.MaterialButton
style="?attr/materialButtonOutlinedStyle"
android:id="@+id/upvote_button_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:paddingStart="8dp"
android:paddingEnd="8dp"
android:minWidth="0dp"
android:textSize="?attr/font_12"
android:textStyle="bold"
android:fontFamily="?attr/font_family"
app:strokeWidth="0dp"
app:icon="@drawable/ic_upvote_24dp"
app:iconSize="24dp"
android:backgroundTint="#00000000" />
<com.google.android.material.button.MaterialButton
style="?attr/materialButtonOutlinedStyle"
android:id="@+id/downvote_button_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:paddingStart="8dp"
android:paddingEnd="8dp"
android:minWidth="0dp"
app:strokeWidth="0dp"
app:icon="@drawable/ic_downvote_24dp"
app:iconSize="24dp"
android:backgroundTint="#00000000" />
</com.google.android.material.button.MaterialButtonToggleGroup>
<com.google.android.material.button.MaterialButton
android:id="@+id/save_button_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="4dp"
android:text="@string/video"
android:textSize="?attr/font_12"
android:fontFamily="?attr/font_family"
app:lib_setRadius="6dp"
app:lib_setRoundedView="true"
app:lib_setShape="rectangle" />
<com.libRG.CustomTextView
android:id="@+id/spoiler_custom_text_view_item_post_video_type_autoplay"
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="6dp"
app:lib_setRoundedView="true"
app:lib_setShape="rectangle" />
<com.libRG.CustomTextView
android:id="@+id/nsfw_text_view_item_post_video_type_autoplay"
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="6dp"
app:lib_setRoundedView="true"
app:lib_setShape="rectangle" />
<com.libRG.CustomTextView
android:id="@+id/flair_custom_text_view_item_post_video_type_autoplay"
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="6dp"
app:lib_setRoundedView="true"
app:lib_setShape="rectangle" />
<com.libRG.CustomTextView
android:id="@+id/awards_text_view_item_post_video_type_autoplay"
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="6dp"
app:lib_setRoundedView="true"
app:lib_setShape="rectangle" />
<ImageView
android:id="@+id/archived_image_view_item_post_video_type_autoplay"
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_video_type_autoplay"
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_video_type_autoplay"
android:layout_width="24dp"
android:layout_height="24dp"
android:src="@drawable/crosspost"
android:visibility="gone" />
</com.nex3z.flowlayout.FlowLayout>
<com.google.android.exoplayer2.ui.AspectRatioFrameLayout
android:id="@+id/aspect_ratio_frame_layout_item_post_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="0dp"
android:background="#000000"
app:resize_mode="fixed_width">
<com.google.android.exoplayer2.ui.PlayerView
android:id="@+id/player_view_item_post_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:show_timeout="1500"
app:auto_show="false"
app:controller_layout_id="@layout/exo_autoplay_playback_control_view" />
<pl.droidsonroids.gif.GifImageView
android:id="@+id/preview_image_view_item_post_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitStart"
android:visibility="gone" />
<ImageView
android:id="@+id/error_loading_gfycat_image_view_item_post_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="16dp"
android:layout_gravity="center"
android:background="@drawable/play_button_round_background"
android:src="@drawable/ic_error_white_36dp"
android:visibility="gone" />
</com.google.android.exoplayer2.ui.AspectRatioFrameLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/bottom_constraint_layout_item_post_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/plus_button_item_post_video_type_autoplay"
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:strokeWidth="0dp"
app:iconSize="24dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" />
app:layout_constraintStart_toEndOf="@id/vote_button_toggle_item_post_card_3_video_type_autoplay"
style="?attr/materialIconButtonOutlinedStyle" />
<TextView
android:id="@+id/score_text_view_item_post_video_type_autoplay"
android:layout_width="64dp"
<com.google.android.material.button.MaterialButton
android:id="@+id/share_button_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
app:strokeWidth="0dp"
app:icon="@drawable/ic_share_grey_24dp"
app:iconSize="24dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@id/save_button_item_post_card_3_video_type_autoplay"
style="?attr/materialIconButtonOutlinedStyle" />
<com.google.android.material.button.MaterialButton
android:id="@+id/comments_count_button_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingStart="8dp"
android:paddingEnd="8dp"
android:minWidth="0dp"
android:textSize="?attr/font_12"
android:textStyle="bold"
android:fontFamily="?attr/font_family"
app:strokeWidth="0dp"
app:iconTint="@null"
app:iconSize="24dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@id/plus_button_item_post_video_type_autoplay" />
<ImageView
android:id="@+id/minus_button_item_post_video_type_autoplay"
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_video_type_autoplay" />
<TextView
android:id="@+id/comments_count_item_post_video_type_autoplay"
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_video_type_autoplay" />
<ImageView
android:id="@+id/save_button_item_post_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="12dp"
android:background="?actionBarItemBackground"
android:clickable="true"
android:focusable="true"
app:layout_constraintStart_toEndOf="@id/share_button_item_post_card_3_video_type_autoplay"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@id/comments_count_item_post_video_type_autoplay"
app:layout_constraintEnd_toStartOf="@id/share_button_item_post_video_type_autoplay" />
<ImageView
android:id="@+id/share_button_item_post_video_type_autoplay"
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" />
style="?attr/materialButtonOutlinedStyle" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -4,8 +4,11 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:tools="http://schemas.android.com/tools"
android:layout_margin="8dp"
app:cardCornerRadius="16dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
app:cardCornerRadius="12dp"
app:cardBackgroundColor="#FBEEFC"
style="?attr/materialCardViewFilledStyle">
@ -14,13 +17,47 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<com.google.android.exoplayer2.ui.AspectRatioFrameLayout
android:id="@+id/aspect_ratio_frame_layout_item_post_card_3_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="0dp"
android:background="#000000"
app:resize_mode="fixed_width">
<com.google.android.exoplayer2.ui.PlayerView
android:id="@+id/player_view_item_post_card_3_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:show_timeout="1500"
app:auto_show="false"
app:controller_layout_id="@layout/exo_autoplay_playback_control_view_legacy" />
<pl.droidsonroids.gif.GifImageView
android:id="@+id/preview_image_view_item_post_card_3_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitStart"
android:visibility="gone" />
<ImageView
android:id="@+id/error_loading_gfycat_image_view_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="16dp"
android:layout_gravity="center"
android:background="@drawable/play_button_round_background"
android:src="@drawable/ic_error_white_36dp"
android:visibility="gone" />
</com.google.android.exoplayer2.ui.AspectRatioFrameLayout>
<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_video_type_autoplay"
android:id="@+id/icon_gif_image_view_item_post_card_3_video_type_autoplay"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_gravity="center"
@ -29,7 +66,7 @@
app:layout_constraintTop_toTopOf="parent"/>
<TextView
android:id="@+id/subreddit_name_text_view_item_post_video_type_autoplay"
android:id="@+id/subreddit_name_text_view_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
@ -37,15 +74,15 @@
android:layout_marginEnd="8dp"
android:textSize="?attr/font_default"
android:fontFamily="?attr/font_family"
app:layout_constraintBottom_toTopOf="@id/user_text_view_item_post_video_type_autoplay"
app:layout_constraintStart_toEndOf="@id/icon_gif_image_view_item_post_video_type_autoplay"
app:layout_constraintEnd_toStartOf="@id/stickied_post_image_view_item_post_video_type_autoplay"
app:layout_constraintBottom_toTopOf="@id/user_text_view_item_post_card_3_video_type_autoplay"
app:layout_constraintStart_toEndOf="@id/icon_gif_image_view_item_post_card_3_video_type_autoplay"
app:layout_constraintEnd_toStartOf="@id/stickied_post_image_view_item_post_card_3_video_type_autoplay"
app:layout_constraintTop_toTopOf="parent"
app:layout_constrainedWidth="true"
app:layout_constraintHorizontal_bias="0" />
<TextView
android:id="@+id/user_text_view_item_post_video_type_autoplay"
android:id="@+id/user_text_view_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
@ -53,14 +90,14 @@
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_video_type_autoplay"
app:layout_constraintEnd_toStartOf="@id/stickied_post_image_view_item_post_video_type_autoplay"
app:layout_constraintTop_toBottomOf="@+id/subreddit_name_text_view_item_post_video_type_autoplay"
app:layout_constraintStart_toEndOf="@+id/icon_gif_image_view_item_post_card_3_video_type_autoplay"
app:layout_constraintEnd_toStartOf="@id/stickied_post_image_view_item_post_card_3_video_type_autoplay"
app:layout_constraintTop_toBottomOf="@+id/subreddit_name_text_view_item_post_card_3_video_type_autoplay"
app:layout_constraintHorizontal_bias="0"
app:layout_constrainedWidth="true" />
<ImageView
android:id="@+id/stickied_post_image_view_item_post_video_type_autoplay"
android:id="@+id/stickied_post_image_view_item_post_card_3_video_type_autoplay"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginEnd="8dp"
@ -71,7 +108,7 @@
tools:visibility="visible" />
<TextView
android:id="@+id/post_time_text_view_item_post_video_type_autoplay"
android:id="@+id/post_time_text_view_item_post_card_3_video_type_autoplay"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:gravity="end"
@ -92,7 +129,7 @@
</androidx.constraintlayout.widget.ConstraintLayout>
<TextView
android:id="@+id/title_text_view_item_post_video_type_autoplay"
android:id="@+id/title_text_view_item_post_card_3_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingStart="16dp"
@ -100,219 +137,94 @@
android:textSize="?attr/title_font_18"
android:fontFamily="?attr/title_font_family" />
<com.nex3z.flowlayout.FlowLayout
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/bottom_constraint_layout_item_post_card_3_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
app:flChildSpacing="16dp"
app:flChildSpacingForLastRow="align"
app:flRowSpacing="8dp">
android:padding="8dp">
<com.libRG.CustomTextView
android:id="@+id/type_text_view_item_post_video_type_autoplay"
<com.google.android.material.button.MaterialButtonToggleGroup
android:id="@+id/vote_button_toggle_item_post_card_3_video_type_autoplay"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:singleSelection="true"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent">
<com.google.android.material.button.MaterialButton
style="?attr/materialButtonOutlinedStyle"
android:id="@+id/upvote_button_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:paddingStart="8dp"
android:paddingEnd="8dp"
android:minWidth="0dp"
android:textSize="?attr/font_12"
android:textStyle="bold"
android:fontFamily="?attr/font_family"
app:strokeWidth="0dp"
app:icon="@drawable/ic_upvote_24dp"
app:iconSize="24dp"
android:backgroundTint="#00000000" />
<com.google.android.material.button.MaterialButton
style="?attr/materialButtonOutlinedStyle"
android:id="@+id/downvote_button_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:paddingStart="8dp"
android:paddingEnd="8dp"
android:minWidth="0dp"
app:strokeWidth="0dp"
app:icon="@drawable/ic_downvote_24dp"
app:iconSize="24dp"
android:backgroundTint="#00000000" />
</com.google.android.material.button.MaterialButtonToggleGroup>
<com.google.android.material.button.MaterialButton
android:id="@+id/save_button_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="4dp"
android:text="@string/video"
android:textSize="?attr/font_12"
android:fontFamily="?attr/font_family"
app:lib_setRadius="6dp"
app:lib_setRoundedView="true"
app:lib_setShape="rectangle" />
<com.libRG.CustomTextView
android:id="@+id/spoiler_custom_text_view_item_post_video_type_autoplay"
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="6dp"
app:lib_setRoundedView="true"
app:lib_setShape="rectangle" />
<com.libRG.CustomTextView
android:id="@+id/nsfw_text_view_item_post_video_type_autoplay"
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="6dp"
app:lib_setRoundedView="true"
app:lib_setShape="rectangle" />
<com.libRG.CustomTextView
android:id="@+id/flair_custom_text_view_item_post_video_type_autoplay"
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="6dp"
app:lib_setRoundedView="true"
app:lib_setShape="rectangle" />
<com.libRG.CustomTextView
android:id="@+id/awards_text_view_item_post_video_type_autoplay"
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="6dp"
app:lib_setRoundedView="true"
app:lib_setShape="rectangle" />
<ImageView
android:id="@+id/archived_image_view_item_post_video_type_autoplay"
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_video_type_autoplay"
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_video_type_autoplay"
android:layout_width="24dp"
android:layout_height="24dp"
android:src="@drawable/crosspost"
android:visibility="gone" />
</com.nex3z.flowlayout.FlowLayout>
<com.google.android.exoplayer2.ui.AspectRatioFrameLayout
android:id="@+id/aspect_ratio_frame_layout_item_post_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="0dp"
android:background="#000000"
app:resize_mode="fixed_width">
<com.google.android.exoplayer2.ui.PlayerView
android:id="@+id/player_view_item_post_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:show_timeout="1500"
app:auto_show="false"
app:controller_layout_id="@layout/exo_autoplay_playback_control_view_legacy" />
<pl.droidsonroids.gif.GifImageView
android:id="@+id/preview_image_view_item_post_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitStart"
android:visibility="gone" />
<ImageView
android:id="@+id/error_loading_gfycat_image_view_item_post_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="16dp"
android:layout_gravity="center"
android:background="@drawable/play_button_round_background"
android:src="@drawable/ic_error_white_36dp"
android:visibility="gone" />
</com.google.android.exoplayer2.ui.AspectRatioFrameLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/bottom_constraint_layout_item_post_video_type_autoplay"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/plus_button_item_post_video_type_autoplay"
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:strokeWidth="0dp"
app:iconSize="24dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" />
app:layout_constraintStart_toEndOf="@id/vote_button_toggle_item_post_card_3_video_type_autoplay"
style="?attr/materialIconButtonOutlinedStyle" />
<TextView
android:id="@+id/score_text_view_item_post_video_type_autoplay"
android:layout_width="64dp"
<com.google.android.material.button.MaterialButton
android:id="@+id/share_button_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
app:strokeWidth="0dp"
app:icon="@drawable/ic_share_grey_24dp"
app:iconSize="24dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@id/save_button_item_post_card_3_video_type_autoplay"
style="?attr/materialIconButtonOutlinedStyle" />
<com.google.android.material.button.MaterialButton
android:id="@+id/comments_count_button_item_post_card_3_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingStart="8dp"
android:paddingEnd="8dp"
android:minWidth="0dp"
android:textSize="?attr/font_12"
android:textStyle="bold"
android:fontFamily="?attr/font_family"
app:strokeWidth="0dp"
app:iconTint="@null"
app:iconSize="24dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@id/plus_button_item_post_video_type_autoplay" />
<ImageView
android:id="@+id/minus_button_item_post_video_type_autoplay"
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_video_type_autoplay" />
<TextView
android:id="@+id/comments_count_item_post_video_type_autoplay"
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_video_type_autoplay" />
<ImageView
android:id="@+id/save_button_item_post_video_type_autoplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="12dp"
android:background="?actionBarItemBackground"
android:clickable="true"
android:focusable="true"
app:layout_constraintStart_toEndOf="@id/share_button_item_post_card_3_video_type_autoplay"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@id/comments_count_item_post_video_type_autoplay"
app:layout_constraintEnd_toStartOf="@id/share_button_item_post_video_type_autoplay" />
<ImageView
android:id="@+id/share_button_item_post_video_type_autoplay"
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" />
style="?attr/materialButtonOutlinedStyle" />
</androidx.constraintlayout.widget.ConstraintLayout>