mirror of
https://github.com/mihonapp/mihon.git
synced 2025-06-28 12:07:52 +02:00
More manga info header tweaks
This commit is contained in:
@ -515,6 +515,9 @@ class MangaInfoChaptersController(private val fromSource: Boolean = false) :
|
||||
fetchChaptersFromSource()
|
||||
}
|
||||
|
||||
val header = headerAdapter ?: return
|
||||
header.setNumChapters(chapters.size)
|
||||
|
||||
val adapter = chaptersAdapter ?: return
|
||||
adapter.updateDataSet(chapters)
|
||||
|
||||
|
@ -41,6 +41,7 @@ class MangaInfoHeaderAdapter(
|
||||
|
||||
private var manga: Manga? = null
|
||||
private var source: Source? = null
|
||||
private var numChapters: Int? = null
|
||||
|
||||
private val scope = CoroutineScope(Job() + Dispatchers.Main)
|
||||
private lateinit var binding: MangaInfoHeaderBinding
|
||||
@ -71,6 +72,12 @@ class MangaInfoHeaderAdapter(
|
||||
notifyDataSetChanged()
|
||||
}
|
||||
|
||||
fun setNumChapters(numChapters: Int) {
|
||||
this.numChapters = numChapters
|
||||
|
||||
notifyDataSetChanged()
|
||||
}
|
||||
|
||||
inner class HeaderViewHolder(private val view: View) : RecyclerView.ViewHolder(view) {
|
||||
fun bind() {
|
||||
if (manga == null) {
|
||||
@ -155,6 +162,7 @@ class MangaInfoHeaderAdapter(
|
||||
.launchIn(scope)
|
||||
|
||||
setMangaInfo(manga!!, source)
|
||||
setChapterInfo()
|
||||
}
|
||||
|
||||
/**
|
||||
@ -316,5 +324,14 @@ class MangaInfoHeaderAdapter(
|
||||
isChecked = isFavorite
|
||||
}
|
||||
}
|
||||
|
||||
private fun setChapterInfo() {
|
||||
// Chapters heading
|
||||
binding.chaptersLabel.text = if (numChapters == null) {
|
||||
view.context.getString(R.string.chapters)
|
||||
} else {
|
||||
view.context.resources.getQuantityString(R.plurals.manga_num_chapters, numChapters!!, numChapters)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user