Image loading optimization
This commit is contained in:
@@ -118,15 +118,14 @@ class ReaderAdapter(private val context: Context,
|
||||
|
||||
holder.view.reader_index.text = (position+1).toString()
|
||||
|
||||
val images = Cache(context).getImages(galleryID)
|
||||
val images = Cache(context).getImage(galleryID, position)
|
||||
|
||||
if (images?.get(position) != null) {
|
||||
if (images != null) {
|
||||
glide
|
||||
.load(images[position])
|
||||
.load(images)
|
||||
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||
.skipMemoryCache(true)
|
||||
.error(R.drawable.image_broken_variant)
|
||||
.dontTransform()
|
||||
.apply {
|
||||
if (BuildConfig.CENSOR)
|
||||
override(5, 8)
|
||||
|
||||
@@ -25,7 +25,6 @@ import android.net.Uri
|
||||
import android.os.Bundle
|
||||
import android.text.*
|
||||
import android.text.style.AlignmentSpan
|
||||
import android.util.Log
|
||||
import android.view.KeyEvent
|
||||
import android.view.MotionEvent
|
||||
import android.view.View
|
||||
@@ -120,7 +119,6 @@ class MainActivity : AppCompatActivity() {
|
||||
val lockManager = try {
|
||||
LockManager(this)
|
||||
} catch (e: Exception) {
|
||||
Log.i("PUPILD", e.toString())
|
||||
android.app.AlertDialog.Builder(this).apply {
|
||||
setTitle(R.string.warning)
|
||||
setMessage(R.string.lock_corrupted)
|
||||
|
||||
@@ -188,6 +188,23 @@ class Cache(context: Context) : ContextWrapper(context) {
|
||||
}
|
||||
}
|
||||
|
||||
val imageExts = listOf(
|
||||
"jpg",
|
||||
"webp"
|
||||
)
|
||||
fun getImage(galleryID: Int, index: Int): File? {
|
||||
val gallery = getCachedGallery(galleryID)
|
||||
|
||||
for (ext in imageExts) {
|
||||
File(gallery, "%05d.$ext".format(index)).let {
|
||||
if (it.exists())
|
||||
return it
|
||||
}
|
||||
}
|
||||
|
||||
return null
|
||||
}
|
||||
|
||||
fun putImage(galleryID: Int, name: String, data: ByteArray) {
|
||||
val cache = File(getCachedGallery(galleryID), name).also {
|
||||
if (!it.exists())
|
||||
|
||||
Reference in New Issue
Block a user