mirror of
https://github.com/kiwix/kiwix-android.git
synced 2025-09-09 07:16:04 -04:00
Suspended setZimReaderSource and switched to IO when creating ZimFileReader
This commit is contained in:
parent
948b8cce20
commit
9d4db58ce4
@ -18,7 +18,9 @@
|
||||
package org.kiwix.kiwixmobile.core.reader
|
||||
|
||||
import android.webkit.WebResourceResponse
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.runBlocking
|
||||
import kotlinx.coroutines.withContext
|
||||
import org.kiwix.kiwixmobile.core.reader.ZimFileReader.Factory
|
||||
import java.net.HttpURLConnection
|
||||
import javax.inject.Inject
|
||||
@ -32,11 +34,11 @@ class ZimReaderContainer @Inject constructor(private val zimFileReaderFactory: F
|
||||
field = value
|
||||
}
|
||||
|
||||
fun setZimReaderSource(zimReaderSource: ZimReaderSource?) {
|
||||
suspend fun setZimReaderSource(zimReaderSource: ZimReaderSource?) {
|
||||
if (zimReaderSource == zimFileReader?.zimReaderSource) {
|
||||
return
|
||||
}
|
||||
zimFileReader = runBlocking {
|
||||
zimFileReader = withContext(Dispatchers.IO) {
|
||||
if (zimReaderSource?.exists() == true && zimReaderSource.canOpenInLibkiwix())
|
||||
zimFileReaderFactory.create(zimReaderSource)
|
||||
else null
|
||||
|
Loading…
x
Reference in New Issue
Block a user