32 lines
No EOL
917 B
Kotlin
32 lines
No EOL
917 B
Kotlin
package com.pixelized.rplexicon
|
|
|
|
import android.app.Application
|
|
import coil.ImageLoader
|
|
import coil.ImageLoaderFactory
|
|
import coil.disk.DiskCache
|
|
import coil.memory.MemoryCache
|
|
import coil.size.Precision
|
|
import dagger.hilt.android.HiltAndroidApp
|
|
|
|
@HiltAndroidApp
|
|
class MainApplication : Application(), ImageLoaderFactory {
|
|
|
|
override fun newImageLoader(): ImageLoader {
|
|
return ImageLoader.Builder(this)
|
|
.memoryCache {
|
|
MemoryCache.Builder(this)
|
|
.maxSizePercent(0.25)
|
|
.build()
|
|
}
|
|
.diskCache {
|
|
DiskCache.Builder()
|
|
.directory(applicationContext.cacheDir.resolve("image_cache"))
|
|
.maxSizeBytes(size = 150.Mo)
|
|
.build()
|
|
}
|
|
.crossfade(true)
|
|
.build()
|
|
}
|
|
}
|
|
|
|
val Int.Mo: Long get() = (this * 1024 * 1024).toLong() |