Add avatar to my story row and wire in badges.

This commit is contained in:
Alex Hart
2022-03-17 15:36:00 -03:00
committed by Cody Henthorne
parent 0b1a93d3e6
commit bf897d10d2
3 changed files with 36 additions and 2 deletions

View File

@@ -2,7 +2,10 @@ package org.thoughtcrime.securesms.stories.landing
import android.view.View
import org.thoughtcrime.securesms.R
import org.thoughtcrime.securesms.avatar.view.AvatarView
import org.thoughtcrime.securesms.badges.BadgeImageView
import org.thoughtcrime.securesms.components.settings.PreferenceModel
import org.thoughtcrime.securesms.recipients.Recipient
import org.thoughtcrime.securesms.util.adapter.mapping.LayoutFactory
import org.thoughtcrime.securesms.util.adapter.mapping.MappingAdapter
import org.thoughtcrime.securesms.util.adapter.mapping.MappingViewHolder
@@ -24,8 +27,14 @@ object MyStoriesItem {
private class ViewHolder(itemView: View) : MappingViewHolder<Model>(itemView) {
private val avatarView: AvatarView = itemView.findViewById(R.id.avatar)
private val badgeView: BadgeImageView = itemView.findViewById(R.id.badge)
override fun bind(model: Model) {
itemView.setOnClickListener { model.onClick() }
avatarView.displayProfileAvatar(Recipient.self())
badgeView.setBadgeFromRecipient(Recipient.self())
}
}
}

View File

@@ -6,6 +6,7 @@ import android.widget.TextView
import androidx.core.content.ContextCompat
import org.thoughtcrime.securesms.R
import org.thoughtcrime.securesms.avatar.view.AvatarView
import org.thoughtcrime.securesms.badges.BadgeImageView
import org.thoughtcrime.securesms.components.ThumbnailView
import org.thoughtcrime.securesms.components.settings.PreferenceModel
import org.thoughtcrime.securesms.database.model.MediaMmsMessageRecord
@@ -78,6 +79,7 @@ object StoriesLandingItem {
private class ViewHolder(itemView: View) : MappingViewHolder<Model>(itemView) {
private val avatarView: AvatarView = itemView.findViewById(R.id.avatar)
private val badgeView: BadgeImageView = itemView.findViewById(R.id.badge)
private val storyPreview: ThumbnailView = itemView.findViewById<ThumbnailView>(R.id.story).apply {
isClickable = false
}
@@ -100,8 +102,10 @@ object StoriesLandingItem {
if (model.data.storyRecipient.isMyStory) {
avatarView.displayProfileAvatar(Recipient.self())
badgeView.setBadgeFromRecipient(Recipient.self())
} else {
avatarView.displayProfileAvatar(model.data.storyRecipient)
badgeView.setBadgeFromRecipient(model.data.storyRecipient)
}
val record = model.data.primaryStory.messageRecord as MediaMmsMessageRecord