mirror of
https://github.com/pachli/pachli-android.git
synced 2025-02-02 18:37:00 +01:00
feat: Tapping followed hashtag names in lists opens relevant timeline
This commit is contained in:
parent
4762411147
commit
65a0fb19d9
@ -19,6 +19,7 @@ import app.pachli.core.common.extensions.hide
|
||||
import app.pachli.core.common.extensions.show
|
||||
import app.pachli.core.common.extensions.viewBinding
|
||||
import app.pachli.core.common.extensions.visible
|
||||
import app.pachli.core.navigation.StatusListActivityIntent
|
||||
import app.pachli.core.network.retrofit.MastodonApi
|
||||
import app.pachli.core.preferences.PrefKeys
|
||||
import app.pachli.databinding.ActivityFollowedTagsBinding
|
||||
@ -170,6 +171,10 @@ class FollowedTagsActivity :
|
||||
}
|
||||
}
|
||||
|
||||
override fun onViewTag(tag: String) {
|
||||
startActivityWithSlideInAnimation(StatusListActivityIntent.hashtag(this, tag))
|
||||
}
|
||||
|
||||
override suspend fun search(token: String): List<ComposeAutoCompleteAdapter.AutocompleteResult> {
|
||||
return viewModel.searchAutocompleteSuggestions(token)
|
||||
}
|
||||
|
@ -2,11 +2,8 @@ package app.pachli.components.followedtags
|
||||
|
||||
import android.view.LayoutInflater
|
||||
import android.view.ViewGroup
|
||||
import android.widget.ImageButton
|
||||
import android.widget.TextView
|
||||
import androidx.paging.PagingDataAdapter
|
||||
import androidx.recyclerview.widget.DiffUtil
|
||||
import app.pachli.R
|
||||
import app.pachli.databinding.ItemFollowedHashtagBinding
|
||||
import app.pachli.interfaces.HashtagActionListener
|
||||
import app.pachli.util.BindingHolder
|
||||
@ -20,9 +17,15 @@ class FollowedTagsAdapter(
|
||||
|
||||
override fun onBindViewHolder(holder: BindingHolder<ItemFollowedHashtagBinding>, position: Int) {
|
||||
viewModel.tags[position].let { tag ->
|
||||
holder.itemView.findViewById<TextView>(R.id.followed_tag).text = tag.name
|
||||
holder.itemView.findViewById<ImageButton>(R.id.followed_tag_unfollow).setOnClickListener {
|
||||
actionListener.unfollow(tag.name, holder.bindingAdapterPosition)
|
||||
with(holder.binding) {
|
||||
followedTag.text = tag.name
|
||||
followedTag.setOnClickListener {
|
||||
actionListener.onViewTag(tag.name)
|
||||
}
|
||||
|
||||
followedTagUnfollow.setOnClickListener {
|
||||
actionListener.unfollow(tag.name, holder.bindingAdapterPosition)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2,4 +2,5 @@ package app.pachli.interfaces
|
||||
|
||||
interface HashtagActionListener {
|
||||
fun unfollow(tagName: String, position: Int)
|
||||
fun onViewTag(tag: String)
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user