From f35ac51f4e795a7cfc813e89b2bea9675a729463 Mon Sep 17 00:00:00 2001
From: Luna712 <142361265+Luna712@users.noreply.github.com>
Date: Sat, 4 Nov 2023 20:37:15 -0600
Subject: [PATCH] Add preference to skip account selection at startup (refs
#740)
---
.../cloudstream3/ui/account/AccountSelectActivity.kt | 8 +++++++-
.../cloudstream3/ui/settings/SettingsGeneral.kt | 9 +++++++++
app/src/main/res/values/strings.xml | 2 ++
app/src/main/res/xml/settins_general.xml | 6 ++++++
4 files changed, 24 insertions(+), 1 deletion(-)
diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/account/AccountSelectActivity.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/account/AccountSelectActivity.kt
index 7f0b2b4a..9ca53cce 100644
--- a/app/src/main/java/com/lagradost/cloudstream3/ui/account/AccountSelectActivity.kt
+++ b/app/src/main/java/com/lagradost/cloudstream3/ui/account/AccountSelectActivity.kt
@@ -6,6 +6,7 @@ import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.lifecycle.ViewModelProvider
import androidx.recyclerview.widget.GridLayoutManager
+import com.lagradost.cloudstream3.AcraApplication.Companion.getKey
import com.lagradost.cloudstream3.CommonActivity
import com.lagradost.cloudstream3.CommonActivity.loadThemes
import com.lagradost.cloudstream3.MainActivity
@@ -35,9 +36,14 @@ class AccountSelectActivity : AppCompatActivity() {
val accounts = getAccounts(this@AccountSelectActivity)
+ val skipStartup = getKey(
+ getString(R.string.skip_startup_account_select_key),
+ false
+ ) ?: false || accounts.count() <= 1
+
// Don't show account selection if there is only
// one account that exists
- if (!isEditingFromMainActivity && accounts.count() <= 1) {
+ if (!isEditingFromMainActivity && skipStartup) {
navigateToMainActivity()
return
}
diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/settings/SettingsGeneral.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/settings/SettingsGeneral.kt
index 224ca74a..5d873391 100644
--- a/app/src/main/java/com/lagradost/cloudstream3/ui/settings/SettingsGeneral.kt
+++ b/app/src/main/java/com/lagradost/cloudstream3/ui/settings/SettingsGeneral.kt
@@ -335,6 +335,15 @@ class SettingsGeneral : PreferenceFragmentCompat() {
return@setOnPreferenceChangeListener true
}
+ settingsManager.edit().putBoolean(
+ getString(R.string.skip_startup_account_select_key),
+ getKey(getString(R.string.skip_startup_account_select_key), false) ?: false
+ ).apply()
+ getPref(R.string.skip_startup_account_select_key)?.setOnPreferenceChangeListener { _, newValue ->
+ setKey(getString(R.string.skip_startup_account_select_key), newValue)
+ return@setOnPreferenceChangeListener true
+ }
+
getPref(R.string.download_path_key)?.setOnPreferenceClickListener {
val dirs = getDownloadDirs()
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 1a4e6c8c..ad741626 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -65,6 +65,7 @@
filter_sub_lang_key
pref_filter_search_quality_key
enable_nsfw_on_providers_key
+ skip_startup_account_select_key
enable_skip_op_from_database
%d %s | %s
@@ -729,4 +730,5 @@
Manage Accounts
Edit account
Logged in as %s
+ Skip account selection at startup
diff --git a/app/src/main/res/xml/settins_general.xml b/app/src/main/res/xml/settins_general.xml
index c4900bca..7d6660ec 100644
--- a/app/src/main/res/xml/settins_general.xml
+++ b/app/src/main/res/xml/settins_general.xml
@@ -11,6 +11,12 @@
android:title="@string/download_path_pref"
android:icon="@drawable/netflix_download" />
+
+