Show loading/error for images in catalogue grid view. Update support lib

This commit is contained in:
len
2017-02-04 19:07:06 +01:00
parent add2ca0b8f
commit fe413d52d6
7 changed files with 90 additions and 10 deletions

View File

@@ -486,14 +486,10 @@ open class CatalogueFragment : BaseRxFragment<CataloguePresenter>(),
* @return the holder of the manga or null if it's not bound.
*/
private fun getHolder(manga: Manga): CatalogueHolder? {
val layoutManager = recycler.layoutManager as LinearLayoutManager
val firstVisiblePos = layoutManager.findFirstVisibleItemPosition()
val lastVisiblePos = layoutManager.findLastVisibleItemPosition()
(firstVisiblePos..lastVisiblePos-1).forEach { i ->
val item = adapter.getItem(i) as? CatalogueItem
adapter.allBoundViewHolders.forEach { holder ->
val item = adapter.getItem(holder.adapterPosition) as? CatalogueItem
if (item != null && item.manga.id!! == manga.id!!) {
return recycler.findViewHolderForLayoutPosition(i) as? CatalogueHolder
return holder as CatalogueHolder
}
}

View File

@@ -4,7 +4,9 @@ import android.view.View
import com.bumptech.glide.Glide
import com.bumptech.glide.load.engine.DiskCacheStrategy
import eu.davidea.flexibleadapter.FlexibleAdapter
import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.data.database.models.Manga
import eu.kanade.tachiyomi.widget.StateImageViewTarget
import kotlinx.android.synthetic.main.item_catalogue_grid.view.*
/**
@@ -42,8 +44,9 @@ class CatalogueGridHolder(private val view: View, private val adapter: FlexibleA
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
.centerCrop()
.skipMemoryCache(true)
.error(R.drawable.ic_broken_image_grey_24dp)
.placeholder(android.R.color.transparent)
.into(view.thumbnail)
.into(StateImageViewTarget(view.thumbnail, view.progress))
}
}