diff options
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/debugger')
-rw-r--r-- | app/src/main/kotlin/com/pitchedapps/frost/debugger/OfflineWebsite.kt | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/debugger/OfflineWebsite.kt b/app/src/main/kotlin/com/pitchedapps/frost/debugger/OfflineWebsite.kt index 95162932..f5f7463d 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/debugger/OfflineWebsite.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/debugger/OfflineWebsite.kt @@ -10,6 +10,8 @@ import com.pitchedapps.frost.utils.createFreshDir import com.pitchedapps.frost.utils.createFreshFile import com.pitchedapps.frost.utils.frostJsoup import com.pitchedapps.frost.utils.unescapeHtml +import io.reactivex.disposables.CompositeDisposable +import io.reactivex.rxkotlin.addTo import okhttp3.Request import okhttp3.ResponseBody import org.jsoup.Jsoup @@ -71,6 +73,8 @@ class OfflineWebsite(private val url: String, .get() .call() + private val compositeDisposable = CompositeDisposable() + /** * Caller to bind callbacks and start the load * Callback is guaranteed to be called unless the load is cancelled @@ -155,7 +159,7 @@ class OfflineWebsite(private val url: String, progress(100) callback(true) } - } + }.addTo(compositeDisposable) } fun zip(name: String): Boolean { @@ -217,7 +221,7 @@ class OfflineWebsite(private val url: String, }) private fun downloadCss() = cssQueue.clean().toTypedArray().zip<String, Set<String>, Set<String>>({ - it.flatMap { it }.toSet() + it.flatMap { l -> l }.toSet() }, { it.downloadUrl({ emptySet() }) { file, body -> var content = body.string() @@ -319,6 +323,7 @@ class OfflineWebsite(private val url: String, fun cancel() { cancelled = true + compositeDisposable.dispose() L.v { "Request cancelled" } } |