mirror of
https://github.com/mihonapp/mihon.git
synced 2025-11-10 11:08:56 +01:00
Handle download cancelation from icon properly (fixes #4241)
This commit is contained in:
@@ -20,7 +20,9 @@ class ChapterHolder(
|
||||
private val binding = ChaptersItemBinding.bind(view)
|
||||
|
||||
init {
|
||||
binding.download.setOnClickListener { onDownloadClick(it) }
|
||||
binding.download.setOnClickListener {
|
||||
onDownloadClick(it, bindingAdapterPosition)
|
||||
}
|
||||
}
|
||||
|
||||
fun bind(item: ChapterItem, manga: Manga) {
|
||||
|
||||
@@ -11,11 +11,11 @@ open class BaseChapterHolder(
|
||||
private val adapter: BaseChaptersAdapter<*>
|
||||
) : FlexibleViewHolder(view, adapter) {
|
||||
|
||||
fun onDownloadClick(view: View) {
|
||||
val item = adapter.getItem(bindingAdapterPosition) as? BaseChapterItem<*, *> ?: return
|
||||
fun onDownloadClick(view: View, position: Int) {
|
||||
val item = adapter.getItem(position) as? BaseChapterItem<*, *> ?: return
|
||||
when (item.status) {
|
||||
Download.State.NOT_DOWNLOADED, Download.State.ERROR -> {
|
||||
adapter.clickListener.downloadChapter(bindingAdapterPosition)
|
||||
adapter.clickListener.downloadChapter(position)
|
||||
}
|
||||
else -> {
|
||||
view.popupMenu(
|
||||
@@ -28,7 +28,7 @@ open class BaseChapterHolder(
|
||||
findItem(R.id.cancel_download).isVisible = item.status != Download.State.DOWNLOADED
|
||||
},
|
||||
onMenuItemClick = {
|
||||
adapter.clickListener.deleteChapter(bindingAdapterPosition)
|
||||
adapter.clickListener.deleteChapter(position)
|
||||
true
|
||||
}
|
||||
)
|
||||
|
||||
@@ -32,7 +32,9 @@ class UpdatesHolder(private val view: View, private val adapter: UpdatesAdapter)
|
||||
adapter.coverClickListener.onCoverClick(bindingAdapterPosition)
|
||||
}
|
||||
|
||||
binding.download.setOnClickListener { onDownloadClick(it) }
|
||||
binding.download.setOnClickListener {
|
||||
onDownloadClick(it, bindingAdapterPosition)
|
||||
}
|
||||
}
|
||||
|
||||
fun bind(item: UpdatesItem) {
|
||||
|
||||
Reference in New Issue
Block a user