Fix default storage
This commit is contained in:
@@ -147,5 +147,11 @@ class LocalMangaRepository : MangaRepository, KoinComponent {
|
||||
result += context.getExternalFilesDirs(DIR_NAME)
|
||||
return result.distinctBy { it.canonicalPath }.filter { it.exists() || it.mkdir() }
|
||||
}
|
||||
|
||||
fun getFallbackStorageDir(context: Context): File? {
|
||||
return context.getExternalFilesDir(DIR_NAME) ?: context.filesDir.sub(DIR_NAME).takeIf {
|
||||
(it.exists() || it.mkdir()) && it.canWrite()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -96,9 +96,7 @@ class AppSettings private constructor(resources: Resources, private val prefs: S
|
||||
val value = prefs.getString(context.getString(R.string.key_local_storage), null)?.let {
|
||||
File(it)
|
||||
}?.takeIf { it.exists() && it.canWrite() }
|
||||
return value ?: LocalMangaRepository.getAvailableStorageDirs(context).maxBy {
|
||||
StatFs(it.path).availableBytes
|
||||
}
|
||||
return value ?: LocalMangaRepository.getFallbackStorageDir(context)
|
||||
}
|
||||
|
||||
fun setStorageDir(context: Context, file: File?) {
|
||||
|
||||
Reference in New Issue
Block a user