|
@@ -29,6 +29,13 @@ class DownloadPageLoader(
|
|
|
// Needed to open input streams
|
|
|
private val context: Application by injectLazy()
|
|
|
|
|
|
+ private var zipPageLoader: ZipPageLoader? = null
|
|
|
+
|
|
|
+ override fun recycle() {
|
|
|
+ super.recycle()
|
|
|
+ zipPageLoader?.recycle()
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* Returns an observable containing the pages found on this downloaded chapter.
|
|
|
*/
|
|
@@ -43,7 +50,7 @@ class DownloadPageLoader(
|
|
|
}
|
|
|
|
|
|
private fun getPagesFromArchive(chapterPath: UniFile): Observable<List<ReaderPage>> {
|
|
|
- val loader = ZipPageLoader(File(chapterPath.filePath!!))
|
|
|
+ val loader = ZipPageLoader(File(chapterPath.filePath!!)).also { zipPageLoader = it }
|
|
|
return loader.getPages()
|
|
|
}
|
|
|
|
|
@@ -61,6 +68,6 @@ class DownloadPageLoader(
|
|
|
}
|
|
|
|
|
|
override fun getPage(page: ReaderPage): Observable<Page.State> {
|
|
|
- return Observable.just(Page.State.READY)
|
|
|
+ return zipPageLoader?.getPage(page) ?: Observable.just(Page.State.READY)
|
|
|
}
|
|
|
}
|