mirror of
https://github.com/mihonapp/mihon.git
synced 2025-06-25 18:47:51 +02:00
Compact tracker card
This commit is contained in:
@ -36,7 +36,7 @@ class TrackAdapter(controller: TrackController) : RecyclerView.Adapter<TrackHold
|
||||
|
||||
interface OnClickListener {
|
||||
fun onLogoClick(position: Int)
|
||||
fun onTitleClick(position: Int)
|
||||
fun onSetClick(position: Int)
|
||||
fun onStatusClick(position: Int)
|
||||
fun onChaptersClick(position: Int)
|
||||
fun onScoreClick(position: Int)
|
||||
|
@ -95,7 +95,7 @@ class TrackController : NucleusController<TrackPresenter>(),
|
||||
}
|
||||
}
|
||||
|
||||
override fun onTitleClick(position: Int) {
|
||||
override fun onSetClick(position: Int) {
|
||||
val item = adapter?.getItem(position) ?: return
|
||||
TrackSearchDialog(this, item.service).showDialog(router, TAG_SEARCH_CONTROLLER)
|
||||
}
|
||||
|
@ -2,21 +2,18 @@ package eu.kanade.tachiyomi.ui.manga.track
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.view.View
|
||||
import eu.kanade.tachiyomi.R
|
||||
import eu.kanade.tachiyomi.ui.base.holder.BaseViewHolder
|
||||
import eu.kanade.tachiyomi.util.view.visibleIf
|
||||
import kotlinx.android.synthetic.main.track_item.chapters_container
|
||||
import kotlinx.android.synthetic.main.track_item.logo_container
|
||||
import kotlinx.android.synthetic.main.track_item.score_container
|
||||
import kotlinx.android.synthetic.main.track_item.status_container
|
||||
import kotlinx.android.synthetic.main.track_item.title_container
|
||||
import kotlinx.android.synthetic.main.track_item.track_chapters
|
||||
import kotlinx.android.synthetic.main.track_item.track_details
|
||||
import kotlinx.android.synthetic.main.track_item.track_logo
|
||||
import kotlinx.android.synthetic.main.track_item.track_score
|
||||
import kotlinx.android.synthetic.main.track_item.track_set
|
||||
import kotlinx.android.synthetic.main.track_item.track_status
|
||||
import kotlinx.android.synthetic.main.track_item.track_title
|
||||
|
||||
class TrackHolder(view: View, adapter: TrackAdapter) : BaseViewHolder(view) {
|
||||
|
||||
@ -24,28 +21,20 @@ class TrackHolder(view: View, adapter: TrackAdapter) : BaseViewHolder(view) {
|
||||
val listener = adapter.rowClickListener
|
||||
|
||||
logo_container.setOnClickListener { listener.onLogoClick(adapterPosition) }
|
||||
title_container.setOnClickListener { listener.onTitleClick(adapterPosition) }
|
||||
track_set.setOnClickListener { listener.onSetClick(adapterPosition) }
|
||||
status_container.setOnClickListener { listener.onStatusClick(adapterPosition) }
|
||||
chapters_container.setOnClickListener { listener.onChaptersClick(adapterPosition) }
|
||||
score_container.setOnClickListener { listener.onScoreClick(adapterPosition) }
|
||||
|
||||
track_set.setOnClickListener { listener.onTitleClick(adapterPosition) }
|
||||
}
|
||||
|
||||
@SuppressLint("SetTextI18n")
|
||||
@Suppress("DEPRECATION")
|
||||
fun bind(item: TrackItem) {
|
||||
val track = item.track
|
||||
track_logo.setImageResource(item.service.getLogo())
|
||||
logo_container.setBackgroundColor(item.service.getLogoColor())
|
||||
|
||||
track_details.visibleIf { track != null }
|
||||
track_set.visibleIf { track == null }
|
||||
|
||||
if (track != null) {
|
||||
track_title.setTextAppearance(itemView.context, R.style.TextAppearance_Regular_Body1_Secondary)
|
||||
track_title.isAllCaps = false
|
||||
track_title.text = track.title
|
||||
track_chapters.text = "${track.last_chapter_read}/" +
|
||||
if (track.total_chapters > 0) track.total_chapters else "-"
|
||||
track_status.text = item.service.getStatus(track.status)
|
||||
|
Reference in New Issue
Block a user