diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaFooterHolder.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaFooterHolder.kt new file mode 100644 index 0000000000..f7697e1a1d --- /dev/null +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaFooterHolder.kt @@ -0,0 +1,24 @@ +package eu.kanade.tachiyomi.ui.recents + +import android.view.View +import eu.kanade.tachiyomi.R +import eu.kanade.tachiyomi.databinding.RecentsFooterItemBinding +import eu.kanade.tachiyomi.ui.manga.chapter.BaseChapterHolder + +class RecentMangaFooterHolder( + view: View, + val adapter: RecentMangaAdapter +) : BaseChapterHolder(view, adapter) { + private val binding = RecentsFooterItemBinding.bind(view) + + fun bind(recentsType: Int) { + when (recentsType) { + RecentMangaHeaderItem.CONTINUE_READING -> { + binding.title.setText(R.string.view_history) + } + RecentMangaHeaderItem.NEW_CHAPTERS -> { + binding.title.setText(R.string.view_all_updates) + } + } + } +} diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaHolder.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaHolder.kt index 035e11707a..0edc08c457 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaHolder.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaHolder.kt @@ -23,17 +23,6 @@ class RecentMangaHolder( binding.cardLayout.setOnClickListener { adapter.delegate.onCoverClick(flexibleAdapterPosition) } } - fun bind(recentsType: Int) { - when (recentsType) { - RecentMangaHeaderItem.CONTINUE_READING -> { - binding.title.setText(R.string.view_history) - } - RecentMangaHeaderItem.NEW_CHAPTERS -> { - binding.title.setText(R.string.view_all_updates) - } - } - } - fun bind(item: RecentMangaItem) { binding.downloadButton.downloadButton.visibleIf(item.mch.manga.source != LocalSource.ID) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaItem.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaItem.kt index 21698e4237..5baacc54f3 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaItem.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaItem.kt @@ -9,6 +9,7 @@ import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.data.database.models.Chapter import eu.kanade.tachiyomi.data.database.models.ChapterImpl import eu.kanade.tachiyomi.data.database.models.MangaChapterHistory +import eu.kanade.tachiyomi.ui.manga.chapter.BaseChapterHolder import eu.kanade.tachiyomi.ui.manga.chapter.BaseChapterItem class RecentMangaItem( @@ -16,7 +17,7 @@ class RecentMangaItem( chapter: Chapter = ChapterImpl(), header: AbstractHeaderItem<*>? ) : - BaseChapterItem>(chapter, header) { + BaseChapterItem>(chapter, header) { override fun getLayoutRes(): Int { return if (mch.manga.id == null) R.layout.recents_footer_item @@ -26,8 +27,9 @@ class RecentMangaItem( override fun createViewHolder( view: View, adapter: FlexibleAdapter> - ): RecentMangaHolder { - return RecentMangaHolder(view, adapter as RecentMangaAdapter) + ): BaseChapterHolder { + return if (mch.manga.id == null) RecentMangaFooterHolder(view, adapter as RecentMangaAdapter) + else RecentMangaHolder(view, adapter as RecentMangaAdapter) } override fun isSwipeable(): Boolean { @@ -51,11 +53,11 @@ class RecentMangaItem( override fun bindViewHolder( adapter: FlexibleAdapter>, - holder: RecentMangaHolder, + holder: BaseChapterHolder, position: Int, payloads: MutableList? ) { - if (mch.manga.id == null) holder.bind((header as? RecentMangaHeaderItem)?.recentsType ?: 0) - else holder.bind(this) + if (mch.manga.id == null) (holder as? RecentMangaFooterHolder)?.bind((header as? RecentMangaHeaderItem)?.recentsType ?: 0) + else (holder as? RecentMangaHolder)?.bind(this) } } diff --git a/app/src/main/res/layout/recents_footer_item.xml b/app/src/main/res/layout/recents_footer_item.xml index 4d34045a2a..fc2bd01569 100644 --- a/app/src/main/res/layout/recents_footer_item.xml +++ b/app/src/main/res/layout/recents_footer_item.xml @@ -27,7 +27,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_arrow_forward_24dp" - android:tint="?colorAccent" + app:tint="?colorAccent" android:layout_marginStart="12dp" app:layout_constraintTop_toTopOf="@id/title" app:layout_constraintBottom_toBottomOf="@id/title"