From ae982b97cafdede7455fc03a682d1f90c9627ff3 Mon Sep 17 00:00:00 2001 From: Chopper <156493704+choppeh@users.noreply.github.com> Date: Thu, 27 Mar 2025 17:08:03 -0300 Subject: [PATCH] Keyoapp: Fix duplicate entries (#8226) * Fix duplicate entries * Remove delimiter Co-authored-by: Vetle Ledaal --------- Co-authored-by: Vetle Ledaal --- lib-multisrc/keyoapp/build.gradle.kts | 2 +- .../kanade/tachiyomi/multisrc/keyoapp/Keyoapp.kt | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/lib-multisrc/keyoapp/build.gradle.kts b/lib-multisrc/keyoapp/build.gradle.kts index 8bbb39f39..f11eb79fd 100644 --- a/lib-multisrc/keyoapp/build.gradle.kts +++ b/lib-multisrc/keyoapp/build.gradle.kts @@ -2,7 +2,7 @@ plugins { id("lib-multisrc") } -baseVersionCode = 15 +baseVersionCode = 16 dependencies { api(project(":lib:i18n")) diff --git a/lib-multisrc/keyoapp/src/eu/kanade/tachiyomi/multisrc/keyoapp/Keyoapp.kt b/lib-multisrc/keyoapp/src/eu/kanade/tachiyomi/multisrc/keyoapp/Keyoapp.kt index 0482dc4d5..5330087cc 100644 --- a/lib-multisrc/keyoapp/src/eu/kanade/tachiyomi/multisrc/keyoapp/Keyoapp.kt +++ b/lib-multisrc/keyoapp/src/eu/kanade/tachiyomi/multisrc/keyoapp/Keyoapp.kt @@ -59,8 +59,16 @@ abstract class Keyoapp( override fun popularMangaRequest(page: Int): Request = GET(baseUrl, headers) - override fun popularMangaSelector(): String = - "div.flex-col div.grid > div.group.border, div:has(h2:contains(Trending)) + div .group.overflow-hidden.grid" + open val popularMangaTitleSelector = listOf( + "Popular", + "Popularie", + "Trending", + ) + + override fun popularMangaSelector(): String = selector( + "div:contains(%s) + div .group.overflow-hidden.grid", + popularMangaTitleSelector, + ) override fun popularMangaFromElement(element: Element): SManga = SManga.create().apply { thumbnail_url = element.getImageUrl("*[style*=background-image]") @@ -357,6 +365,10 @@ abstract class Keyoapp( return now.timeInMillis } + private fun selector(selector: String, contains: List): String { + return contains.joinToString { selector.replace("%s", it) } + } + override fun setupPreferenceScreen(screen: PreferenceScreen) { SwitchPreferenceCompat(screen.context).apply { key = SHOW_PAID_CHAPTERS_PREF