From 4aeaba95483dcb8301f02d0256a531c4222c9b31 Mon Sep 17 00:00:00 2001 From: ObserverOfTime Date: Mon, 13 Mar 2023 16:35:32 +0200 Subject: [PATCH] Xkcd: throw an error on interactive comics (#15634) --- src/all/xkcd/build.gradle | 2 +- .../xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/Xkcd.kt | 5 ++--- .../tachiyomi/extension/all/xkcd/translations/XkcdES.kt | 3 +-- .../tachiyomi/extension/all/xkcd/translations/XkcdKO.kt | 5 ++--- .../tachiyomi/extension/all/xkcd/translations/XkcdZH.kt | 5 ++--- 5 files changed, 8 insertions(+), 12 deletions(-) diff --git a/src/all/xkcd/build.gradle b/src/all/xkcd/build.gradle index 026111fdf..c1b688b37 100644 --- a/src/all/xkcd/build.gradle +++ b/src/all/xkcd/build.gradle @@ -6,7 +6,7 @@ ext { extName = 'xkcd' pkgNameSuffix = 'all.xkcd' extClass = '.XkcdFactory' - extVersionCode = 12 + extVersionCode = 13 } apply from: "$rootDir/common.gradle" diff --git a/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/Xkcd.kt b/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/Xkcd.kt index b90be56e1..d3668bb44 100644 --- a/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/Xkcd.kt +++ b/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/Xkcd.kt @@ -30,8 +30,7 @@ open class Xkcd( "A webcomic of romance, sarcasm, math and language." protected open val interactiveText = - "To experience the interactive version of this comic," + - "\nopen it in WebView/browser." + "To experience the interactive version of this comic, open it in WebView/browser." protected open val altTextUrl = LATIN_ALT_TEXT_URL @@ -98,7 +97,7 @@ open class Xkcd( // if the img tag is empty or has siblings then it is an interactive comic val img = response.asJsoup().selectFirst(imageSelector)?.takeIf { it.nextElementSibling() == null - } ?: return listOf(Page(0, "", interactiveText.image())) + } ?: error(interactiveText) // if an HD image is available it'll be the srcset attribute val image = when { diff --git a/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/translations/XkcdES.kt b/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/translations/XkcdES.kt index b5e473473..72a1a4507 100644 --- a/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/translations/XkcdES.kt +++ b/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/translations/XkcdES.kt @@ -11,8 +11,7 @@ class XkcdES : Xkcd("https://es.xkcd.com", "es") { // Google translated, sorry override val interactiveText = - "Para experimentar la versión interactiva de este cómic," + - "\nábralo en WebView/navegador." + "Para experimentar la versión interactiva de este cómic, ábralo en WebView/navegador." override val chapterListSelector = "#archive-ul > ul > li > a" diff --git a/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/translations/XkcdKO.kt b/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/translations/XkcdKO.kt index ae4bd2520..9b9d60af3 100644 --- a/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/translations/XkcdKO.kt +++ b/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/translations/XkcdKO.kt @@ -13,7 +13,7 @@ class XkcdKO : Xkcd("https://xkcdko.com", "ko") { // Google translated, sorry override val interactiveText = - "이 만화의 대화형 버전을 경험하려면\nWebView/브라우저에서 엽니다." + "이 만화의 대화형 버전을 경험하려면 WebView/브라우저에서 엽니다." override val altTextUrl = CJK_ALT_TEXT_URL @@ -33,8 +33,7 @@ class XkcdKO : Xkcd("https://xkcdko.com", "ko") { override fun pageListParse(response: Response): List { // if the img tag is empty then it is an interactive comic - val img = response.asJsoup().selectFirst(imageSelector) - ?: return listOf(Page(0, "", interactiveText.image())) + val img = response.asJsoup().selectFirst(imageSelector) ?: error(interactiveText) // if an HD image is available it'll be the srcset attribute val image = when { diff --git a/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/translations/XkcdZH.kt b/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/translations/XkcdZH.kt index e65f15aaa..8cea92024 100644 --- a/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/translations/XkcdZH.kt +++ b/src/all/xkcd/src/eu/kanade/tachiyomi/extension/all/xkcd/translations/XkcdZH.kt @@ -21,7 +21,7 @@ class XkcdZH : Xkcd("https://xkcd.tw", "zh", "yyyy-MM-dd HH:mm:ss") { // Google translated, sorry override val interactiveText = - "要體驗本漫畫的互動版\n請在WebView/瀏覽器中打開。" + "要體驗本漫畫的互動版請在WebView/瀏覽器中打開。" override val altTextUrl = CJK_ALT_TEXT_URL @@ -49,8 +49,7 @@ class XkcdZH : Xkcd("https://xkcd.tw", "zh", "yyyy-MM-dd HH:mm:ss") { override fun pageListParse(response: Response): List { // if img tag is empty then it is an interactive comic - val img = response.asJsoup().selectFirst(imageSelector) - ?: return listOf(Page(0, "", interactiveText.image())) + val img = response.asJsoup().selectFirst(imageSelector) ?: error(interactiveText) val image = img.attr("abs:src")