diff --git a/app/src/main/java/exh/md/handlers/MangaPlusHandler.kt b/app/src/main/java/exh/md/handlers/MangaPlusHandler.kt index 4c9a8f8ac..1f1e0f08d 100644 --- a/app/src/main/java/exh/md/handlers/MangaPlusHandler.kt +++ b/app/src/main/java/exh/md/handlers/MangaPlusHandler.kt @@ -34,12 +34,12 @@ class MangaPlusHandler(currentClient: OkHttpClient) { .rateLimitHost(WEB_URL.toHttpUrl(), 2) .build() - suspend fun fetchPageList(chapterId: String): List { - val response = client.newCall(pageListRequest(chapterId.substringAfterLast("/"))).awaitSuccess() + suspend fun fetchPageList(chapterId: String, dataSaver: Boolean): List { + val response = client.newCall(pageListRequest(chapterId.substringAfterLast("/"), dataSaver)).awaitSuccess() return pageListParse(response) } - private fun pageListRequest(chapterId: String): Request { + private fun pageListRequest(chapterId: String, dataSaver: Boolean): Request { val newHeaders = headers.newBuilder() .set("Referer", "$WEB_URL/viewer/$chapterId") .build() @@ -47,7 +47,14 @@ class MangaPlusHandler(currentClient: OkHttpClient) { val url = "$API_URL/manga_viewer".toHttpUrl().newBuilder() .addQueryParameter("chapter_id", chapterId) .addQueryParameter("split", "yes") - .addQueryParameter("img_quality", "super_high") + .addQueryParameter( + "img_quality", + if (dataSaver) { + "low" + } else { + "super_high" + }, + ) .addQueryParameter("format", "json") .toString() diff --git a/app/src/main/java/exh/md/handlers/PageHandler.kt b/app/src/main/java/exh/md/handlers/PageHandler.kt index 7f5e5c9b1..cf5ddd5a0 100644 --- a/app/src/main/java/exh/md/handlers/PageHandler.kt +++ b/app/src/main/java/exh/md/handlers/PageHandler.kt @@ -39,6 +39,7 @@ class PageHandler( when { chapter.scanlator.equals("mangaplus", true) -> mangaPlusHandler.fetchPageList( chapterResponse.data.attributes.externalUrl, + dataSaver = dataSaver, ) /*chapter.scanlator.equals("comikey", true) -> comikeyHandler.fetchPageList( chapterResponse.data.attributes.externalUrl