mirror of
https://github.com/libre-tube/LibreTube.git
synced 2025-04-29 08:20:32 +05:30
Add option for runtime caching
This commit is contained in:
parent
c3c24a73b3
commit
ef48cc6bb1
@ -9,6 +9,7 @@ import android.widget.ImageView
|
|||||||
import coil.ImageLoader
|
import coil.ImageLoader
|
||||||
import coil.disk.DiskCache
|
import coil.disk.DiskCache
|
||||||
import coil.load
|
import coil.load
|
||||||
|
import coil.request.CachePolicy
|
||||||
import coil.request.ImageRequest
|
import coil.request.ImageRequest
|
||||||
import com.github.libretube.api.CronetHelper
|
import com.github.libretube.api.CronetHelper
|
||||||
import com.github.libretube.constants.PreferenceKeys
|
import com.github.libretube.constants.PreferenceKeys
|
||||||
@ -25,17 +26,24 @@ object ImageHelper {
|
|||||||
fun initializeImageLoader(context: Context) {
|
fun initializeImageLoader(context: Context) {
|
||||||
val maxImageCacheSize = PreferenceHelper.getString(
|
val maxImageCacheSize = PreferenceHelper.getString(
|
||||||
PreferenceKeys.MAX_IMAGE_CACHE,
|
PreferenceKeys.MAX_IMAGE_CACHE,
|
||||||
"128"
|
""
|
||||||
).toInt()
|
)
|
||||||
|
|
||||||
val diskCache = DiskCache.Builder()
|
|
||||||
.directory(context.filesDir.resolve("coil"))
|
|
||||||
.maxSizeBytes(maxImageCacheSize * 1024 * 1024L)
|
|
||||||
.build()
|
|
||||||
|
|
||||||
imageLoader = ImageLoader.Builder(context)
|
imageLoader = ImageLoader.Builder(context)
|
||||||
.callFactory(CronetHelper.callFactory)
|
.callFactory(CronetHelper.callFactory)
|
||||||
.diskCache(diskCache)
|
.apply {
|
||||||
|
when (maxImageCacheSize) {
|
||||||
|
"" -> {
|
||||||
|
memoryCachePolicy(CachePolicy.DISABLED)
|
||||||
|
}
|
||||||
|
else -> diskCache(
|
||||||
|
DiskCache.Builder()
|
||||||
|
.directory(context.filesDir.resolve("coil"))
|
||||||
|
.maxSizeBytes(maxImageCacheSize.toInt() * 1024 * 1024L)
|
||||||
|
.build()
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
.build()
|
.build()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -399,6 +399,7 @@
|
|||||||
<item>128MB</item>
|
<item>128MB</item>
|
||||||
<item>256MB</item>
|
<item>256MB</item>
|
||||||
<item>512MB</item>
|
<item>512MB</item>
|
||||||
|
<item>@string/limit_to_runtime</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
|
|
||||||
<string-array name="cacheSizeValues">
|
<string-array name="cacheSizeValues">
|
||||||
@ -408,6 +409,7 @@
|
|||||||
<item>128</item>
|
<item>128</item>
|
||||||
<item>256</item>
|
<item>256</item>
|
||||||
<item>512</item>
|
<item>512</item>
|
||||||
|
<item />
|
||||||
</string-array>
|
</string-array>
|
||||||
|
|
||||||
<string-array name="loadingInterval">
|
<string-array name="loadingInterval">
|
||||||
|
@ -376,6 +376,7 @@
|
|||||||
<string name="hls_instead_of_dash">Use HLS</string>
|
<string name="hls_instead_of_dash">Use HLS</string>
|
||||||
<string name="hls_instead_of_dash_summary">Use HLS instead of DASH (will be slower, not recommended)</string>
|
<string name="hls_instead_of_dash_summary">Use HLS instead of DASH (will be slower, not recommended)</string>
|
||||||
<string name="auto_quality">Auto</string>
|
<string name="auto_quality">Auto</string>
|
||||||
|
<string name="limit_to_runtime">Limit to runtime</string>
|
||||||
|
|
||||||
<!-- Notification channel strings -->
|
<!-- Notification channel strings -->
|
||||||
<string name="download_channel_name">Download Service</string>
|
<string name="download_channel_name">Download Service</string>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user