Move cover card outline clipping code from item to holder classes

(cherry picked from commit 471d5d62d5cbd498aed41ad100e1a4169365c00c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceGridHolder.kt
This commit is contained in:
arkon 2020-05-16 16:32:14 -04:00 committed by Jobobby04
parent b6603c3425
commit 08017a0cd1
4 changed files with 10 additions and 8 deletions

View File

@ -7,6 +7,7 @@ import eu.kanade.tachiyomi.data.database.models.Manga
import eu.kanade.tachiyomi.data.glide.GlideApp
import eu.kanade.tachiyomi.data.glide.toMangaThumbnail
import eu.kanade.tachiyomi.widget.StateImageViewTarget
import kotlinx.android.synthetic.main.source_grid_item.card
import kotlinx.android.synthetic.main.source_grid_item.progress
import kotlinx.android.synthetic.main.source_grid_item.thumbnail
import kotlinx.android.synthetic.main.source_grid_item.title
@ -29,6 +30,9 @@ class SourceGridHolder(private val view: View, private val adapter: FlexibleAdap
* @param manga the manga to bind.
*/
override fun onSetValues(manga: Manga) {
// Set manga title
title.text = manga.title
// Set alpha of thumbnail.
thumbnail.alpha = if (manga.favorite) 0.3f else 1.0f
@ -36,8 +40,8 @@ class SourceGridHolder(private val view: View, private val adapter: FlexibleAdap
}
override fun setImage(manga: Manga) {
// Set manga title
title.text = manga.title
// Setting this via XML doesn't work
card.clipToOutline = true
GlideApp.with(view.context).clear(thumbnail)
if (!manga.thumbnail_url.isNullOrEmpty()) {

View File

@ -34,9 +34,6 @@ class SourceItem(val manga: Manga, private val catalogueAsList: Preference<Boole
val parent = adapter.recyclerView
return if (parent is AutofitRecyclerView) {
view.apply {
// Setting this via XML doesn't work
card.clipToOutline = true
card.layoutParams = FrameLayout.LayoutParams(
MATCH_PARENT, parent.itemWidth / 3 * 4
)

View File

@ -9,6 +9,7 @@ import eu.kanade.tachiyomi.data.glide.GlideApp
import eu.kanade.tachiyomi.data.glide.toMangaThumbnail
import eu.kanade.tachiyomi.util.isLocal
import eu.kanade.tachiyomi.util.view.visibleIf
import kotlinx.android.synthetic.main.source_grid_item.card
import kotlinx.android.synthetic.main.source_grid_item.download_text
import kotlinx.android.synthetic.main.source_grid_item.local_text
import kotlinx.android.synthetic.main.source_grid_item.thumbnail
@ -52,6 +53,9 @@ class LibraryGridHolder(
// set local visibility if its local manga
local_text.visibleIf { item.manga.isLocal() }
// Setting this via XML doesn't work
card.clipToOutline = true
// Update the cover.
GlideApp.with(view.context).clear(thumbnail)
GlideApp.with(view.context)

View File

@ -44,9 +44,6 @@ class LibraryItem(val manga: LibraryManga, private val libraryAsList: Preference
val parent = adapter.recyclerView
return if (parent is AutofitRecyclerView) {
view.apply {
// Setting this via XML doesn't work
card.clipToOutline = true
val coverHeight = parent.itemWidth / 3 * 4
card.layoutParams = FrameLayout.LayoutParams(MATCH_PARENT, coverHeight)
gradient.layoutParams = FrameLayout.LayoutParams(