feat(en/gogoanime): Add preference for domain (#1693)

This commit is contained in:
Secozzi
2023-06-10 10:14:28 +02:00
committed by GitHub
parent a44c0b845a
commit 0a423a0a60
2 changed files with 12 additions and 14 deletions

View File

@ -5,7 +5,7 @@ ext {
extName = 'Gogoanime' extName = 'Gogoanime'
pkgNameSuffix = 'en.gogoanime' pkgNameSuffix = 'en.gogoanime'
extClass = '.GogoAnime' extClass = '.GogoAnime'
extVersionCode = 66 extVersionCode = 67
libVersion = '13' libVersion = '13'
} }

View File

@ -2,6 +2,7 @@ package eu.kanade.tachiyomi.animeextension.en.gogoanime
import android.app.Application import android.app.Application
import android.content.SharedPreferences import android.content.SharedPreferences
import androidx.preference.EditTextPreference
import androidx.preference.ListPreference import androidx.preference.ListPreference
import androidx.preference.MultiSelectListPreference import androidx.preference.MultiSelectListPreference
import androidx.preference.PreferenceScreen import androidx.preference.PreferenceScreen
@ -250,11 +251,10 @@ class GogoAnime : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
"mp4upload", "mp4upload",
) )
private const val PREF_DOMAIN_KEY = "preferred_domain" private const val PREF_DOMAIN_KEY = "preferred_domain_name"
private const val PREF_DOMAIN_TITLE = "Preferred domain (requires app restart)" private const val PREF_DOMAIN_TITLE = "Override BaseUrl"
private val PREF_DOMAIN_ENTRIES = arrayOf("gogoanime.cl", "gogoanime.llc") private const val PREF_DOMAIN_SUMMARY = "Override default domain (requires app restart)"
private val PREF_DOMAIN_ENTRY_VALUES = PREF_DOMAIN_ENTRIES.map { "https://$it" }.toTypedArray() private const val PREF_DOMAIN_DEFAULT = "https://gogoanime.hu"
private val PREF_DOMAIN_DEFAULT = "https://gogoanime.cl"
private const val PREF_QUALITY_KEY = "preferred_quality" private const val PREF_QUALITY_KEY = "preferred_quality"
private const val PREF_QUALITY_TITLE = "Preferred quality" private const val PREF_QUALITY_TITLE = "Preferred quality"
@ -274,19 +274,17 @@ class GogoAnime : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
// ============================== Settings ============================== // ============================== Settings ==============================
override fun setupPreferenceScreen(screen: PreferenceScreen) { override fun setupPreferenceScreen(screen: PreferenceScreen) {
ListPreference(screen.context).apply { EditTextPreference(screen.context).apply {
key = PREF_DOMAIN_KEY key = PREF_DOMAIN_KEY
title = PREF_DOMAIN_TITLE title = PREF_DOMAIN_TITLE
entries = PREF_DOMAIN_ENTRIES summary = PREF_DOMAIN_SUMMARY
entryValues = PREF_DOMAIN_ENTRY_VALUES dialogTitle = PREF_DOMAIN_TITLE
dialogMessage = "Default: $PREF_DOMAIN_DEFAULT"
setDefaultValue(PREF_DOMAIN_DEFAULT) setDefaultValue(PREF_DOMAIN_DEFAULT)
summary = "%s"
setOnPreferenceChangeListener { _, newValue -> setOnPreferenceChangeListener { _, newValue ->
val selected = newValue as String val newValueString = newValue as String
val index = findIndexOfValue(selected) preferences.edit().putString(key, newValueString.trim()).commit()
val entry = entryValues[index] as String
preferences.edit().putString(key, entry).commit()
} }
}.let { screen.addPreference(it) } }.let { screen.addPreference(it) }