From a43e950a488637873553d4a46f49a8bb80a86542 Mon Sep 17 00:00:00 2001 From: LagradOst <46196380+Blatzar@users.noreply.github.com> Date: Mon, 10 Oct 2022 21:51:03 +0200 Subject: [PATCH] Remove provider language (#141) --- .../com/lagradost/cloudstream3/MainAPI.kt | 30 ++++++++++++------- .../ui/setup/SetupFragmentExtensions.kt | 2 +- .../ui/setup/SetupFragmentLanguage.kt | 2 +- .../main/res/navigation/mobile_navigation.xml | 14 +++++++++ app/src/main/res/xml/settings_providers.xml | 1 + 5 files changed, 36 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/com/lagradost/cloudstream3/MainAPI.kt b/app/src/main/java/com/lagradost/cloudstream3/MainAPI.kt index 416a7238..a06dd95e 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/MainAPI.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/MainAPI.kt @@ -17,8 +17,7 @@ import com.lagradost.cloudstream3.ui.player.SubtitleData import com.lagradost.cloudstream3.ui.settings.SettingsFragment.Companion.isTvSettings import com.lagradost.cloudstream3.utils.AppUtils.toJson import com.lagradost.cloudstream3.utils.ExtractorLink -import com.lagradost.cloudstream3.utils.Qualities -import com.lagradost.cloudstream3.utils.loadExtractor +import com.lagradost.cloudstream3.utils.SubtitleHelper import okhttp3.Interceptor import java.text.SimpleDateFormat import java.util.* @@ -191,17 +190,26 @@ object APIHolder { return list.filter { names.contains(it) }.map { DubStatus.valueOf(it) }.toHashSet() } + /** + * Gets all the activated provider languages + * Used to obey the preference provider_lang_key + * but it turned out too complicated and unnecessary with extensions. + **/ fun Context.getApiProviderLangSettings(): HashSet { - val settingsManager = PreferenceManager.getDefaultSharedPreferences(this) - val hashSet = HashSet() - hashSet.add("en") // def is only en - val list = settingsManager.getStringSet( - this.getString(R.string.provider_lang_key), - hashSet.toMutableSet() - ) + val langs = apis.map { it.lang }.toSet() + .sortedBy { SubtitleHelper.fromTwoLettersToLanguage(it) } + return langs.toHashSet() - if (list.isNullOrEmpty()) return hashSet - return list.toHashSet() +// val settingsManager = PreferenceManager.getDefaultSharedPreferences(this) +// val hashSet = HashSet() +// hashSet.add("en") // def is only en +// val list = settingsManager.getStringSet( +// this.getString(R.string.provider_lang_key), +// hashSet.toMutableSet() +// ) +// +// if (list.isNullOrEmpty()) return hashSet +// return list.toHashSet() } fun Context.getApiTypeSettings(): HashSet { diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/setup/SetupFragmentExtensions.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/setup/SetupFragmentExtensions.kt index 43037038..0f11f214 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/ui/setup/SetupFragmentExtensions.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/ui/setup/SetupFragmentExtensions.kt @@ -100,7 +100,7 @@ class SetupFragmentExtensions : Fragment() { next_btt?.setOnClickListener { // Continue setup if (isSetup) - findNavController().navigate(R.id.action_navigation_setup_extensions_to_navigation_setup_provider_languages) + findNavController().navigate(R.id.action_navigation_setup_extensions_to_navigation_setup_media) else findNavController().navigate(R.id.navigation_home) } diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/setup/SetupFragmentLanguage.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/setup/SetupFragmentLanguage.kt index 71472328..f9268d77 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/ui/setup/SetupFragmentLanguage.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/ui/setup/SetupFragmentLanguage.kt @@ -85,7 +85,7 @@ class SetupFragmentLanguage : Fragment() { && PluginManager.getPluginsLocal().isEmpty() //&& PREBUILT_REPOSITORIES.isNotEmpty() ) R.id.action_navigation_global_to_navigation_setup_extensions - else R.id.action_navigation_setup_language_to_navigation_setup_provider_languages + else R.id.action_navigation_setup_language_to_navigation_setup_media findNavController().navigate( nextDestination, diff --git a/app/src/main/res/navigation/mobile_navigation.xml b/app/src/main/res/navigation/mobile_navigation.xml index 3c45ee70..94d489fd 100644 --- a/app/src/main/res/navigation/mobile_navigation.xml +++ b/app/src/main/res/navigation/mobile_navigation.xml @@ -522,6 +522,13 @@ app:exitAnim="@anim/exit_anim" app:popEnterAnim="@anim/enter_anim" app:popExitAnim="@anim/exit_anim" /> + +