From f9f86e46aef431cca4e75ac984b12ed1899ebc53 Mon Sep 17 00:00:00 2001 From: Arkai1 Date: Wed, 16 Apr 2025 13:10:23 +0530 Subject: [PATCH 1/9] Update HiAnime.kt --- .../animeextension/en/zoro/HiAnime.kt | 29 ++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/src/en/zoro/src/eu/kanade/tachiyomi/animeextension/en/zoro/HiAnime.kt b/src/en/zoro/src/eu/kanade/tachiyomi/animeextension/en/zoro/HiAnime.kt index f05e35d3..fbc3f78c 100644 --- a/src/en/zoro/src/eu/kanade/tachiyomi/animeextension/en/zoro/HiAnime.kt +++ b/src/en/zoro/src/eu/kanade/tachiyomi/animeextension/en/zoro/HiAnime.kt @@ -1,5 +1,8 @@ package eu.kanade.tachiyomi.animeextension.en.zoro +import android.widget.Toast +import androidx.preference.ListPreference +import androidx.preference.PreferenceScreen import eu.kanade.tachiyomi.animesource.model.SAnime import eu.kanade.tachiyomi.animesource.model.Video import eu.kanade.tachiyomi.lib.megacloudextractor.MegaCloudExtractor @@ -12,7 +15,7 @@ import org.jsoup.nodes.Element class HiAnime : ZoroTheme( "en", "HiAnime", - "https://hianime.to", + "https://hianimez.to", hosterNames = listOf( "HD-1", "HD-2", @@ -45,4 +48,28 @@ class HiAnime : ZoroTheme( else -> emptyList() } } + // Added the setupPreferenceScreen method here + override fun setupPreferenceScreen(screen: PreferenceScreen) { + screen.addPreference(ListPreference(screen.context).apply { + key = PREF_DOMAIN_KEY + title = "Preferred domain" + entries = arrayOf("hianimez.to", "hianime.to", "hianime.bz", "hianime.pe") + entryValues = arrayOf("https://hianimez.to", "https://hianime.to", "https://hianime.bz", "https://hianime.pe") + setDefaultValue(PREF_DOMAIN_DEFAULT) + summary = "%s" + + setOnPreferenceChangeListener { _, newValue -> + val selected = newValue as String + val index = findIndexOfValue(selected) + val entry = entryValues[index] as String + Toast.makeText(screen.context, "Restart Aniyomi to apply changes", Toast.LENGTH_LONG).show() + preferences.edit().putString(key, entry).commit() + } + }) + } + + companion object { + private const val PREF_DOMAIN_KEY = "preferred_domain" + private const val PREF_DOMAIN_DEFAULT = "https://hianimez.to" + } } From c4ff62639dd6d057ce06addd73333c23030319e3 Mon Sep 17 00:00:00 2001 From: Arkai1 Date: Wed, 16 Apr 2025 13:12:30 +0530 Subject: [PATCH 2/9] Update build.gradle --- src/en/zoro/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/en/zoro/build.gradle b/src/en/zoro/build.gradle index 3ae24e55..a71de7c5 100644 --- a/src/en/zoro/build.gradle +++ b/src/en/zoro/build.gradle @@ -2,8 +2,8 @@ ext { extName = 'HiAnime' extClass = '.HiAnime' themePkg = 'zorotheme' - baseUrl = 'https://hianime.to' - overrideVersionCode = 48 + baseUrl = 'https://hianimez.to' + overrideVersionCode = 49 } apply from: "$rootDir/common.gradle" From 160f5531ddc69ea36f069a9f6a707b4c853350f8 Mon Sep 17 00:00:00 2001 From: Arkai1 Date: Wed, 16 Apr 2025 13:49:25 +0530 Subject: [PATCH 3/9] Update HiAnime.kt --- .../animeextension/en/zoro/HiAnime.kt | 60 ++++++++++++------- 1 file changed, 39 insertions(+), 21 deletions(-) diff --git a/src/en/zoro/src/eu/kanade/tachiyomi/animeextension/en/zoro/HiAnime.kt b/src/en/zoro/src/eu/kanade/tachiyomi/animeextension/en/zoro/HiAnime.kt index fbc3f78c..f5451710 100644 --- a/src/en/zoro/src/eu/kanade/tachiyomi/animeextension/en/zoro/HiAnime.kt +++ b/src/en/zoro/src/eu/kanade/tachiyomi/animeextension/en/zoro/HiAnime.kt @@ -27,9 +27,13 @@ class HiAnime : ZoroTheme( override val ajaxRoute = "/v2" private val streamtapeExtractor by lazy { StreamTapeExtractor(client) } + private val megaCloudExtractor by lazy { MegaCloudExtractor(client, headers, preferences) } - override fun latestUpdatesRequest(page: Int): Request = GET("$baseUrl/recently-updated?page=$page", docHeaders) + override fun latestUpdatesRequest(page: Int): Request = GET( + "$baseUrl/recently-updated?page=$page", + docHeaders, + ) override fun popularAnimeFromElement(element: Element): SAnime { return super.popularAnimeFromElement(element).apply { @@ -40,36 +44,50 @@ class HiAnime : ZoroTheme( override fun extractVideo(server: VideoData): List