mirror of https://github.com/KokaKiwi/BarInsta
44 lines
1.7 KiB
Java
44 lines
1.7 KiB
Java
package awais.instagrabber.adapters.viewholder;
|
|
|
|
import androidx.recyclerview.widget.RecyclerView;
|
|
|
|
import awais.instagrabber.adapters.FeedStoriesAdapter;
|
|
import awais.instagrabber.databinding.ItemHighlightBinding;
|
|
import awais.instagrabber.repositories.responses.User;
|
|
import awais.instagrabber.repositories.responses.stories.Story;
|
|
|
|
public final class FeedStoryViewHolder extends RecyclerView.ViewHolder {
|
|
|
|
private final ItemHighlightBinding binding;
|
|
|
|
public FeedStoryViewHolder(final ItemHighlightBinding binding) {
|
|
super(binding.getRoot());
|
|
this.binding = binding;
|
|
}
|
|
|
|
public void bind(final Story model,
|
|
final int position,
|
|
final FeedStoriesAdapter.OnFeedStoryClickListener listener) {
|
|
if (model == null) return;
|
|
binding.getRoot().setOnClickListener(v -> {
|
|
if (listener == null) return;
|
|
listener.onFeedStoryClick(model, position);
|
|
});
|
|
binding.getRoot().setOnLongClickListener(v -> {
|
|
if (listener != null) listener.onFeedStoryLongClick(model, position);
|
|
return true;
|
|
});
|
|
final User profileModel = model.getUser();
|
|
binding.title.setText(profileModel.getUsername());
|
|
final boolean isFullyRead =
|
|
model.getSeen() != null &&
|
|
model.getSeen().equals(model.getLatestReelMedia());
|
|
binding.title.setAlpha(isFullyRead ? 0.5F : 1.0F);
|
|
binding.icon.setImageURI(profileModel.getProfilePicUrl());
|
|
binding.icon.setAlpha(isFullyRead ? 0.5F : 1.0F);
|
|
|
|
if (model.getBroadcast() != null) binding.icon.setStoriesBorder(2);
|
|
else if (model.getHasBestiesMedia()) binding.icon.setStoriesBorder(1);
|
|
else binding.icon.setStoriesBorder(0);
|
|
}
|
|
} |