diff --git a/.idea/misc.xml b/.idea/misc.xml index f5db0c53..f58d8de1 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,4 +1,3 @@ - diff --git a/app/src/main/java/com/deniscerri/ytdlnis/ui/more/settings/SettingsFragment.kt b/app/src/main/java/com/deniscerri/ytdlnis/ui/more/settings/SettingsFragment.kt index ee2902d7..c4064943 100644 --- a/app/src/main/java/com/deniscerri/ytdlnis/ui/more/settings/SettingsFragment.kt +++ b/app/src/main/java/com/deniscerri/ytdlnis/ui/more/settings/SettingsFragment.kt @@ -9,6 +9,7 @@ import android.os.Build.VERSION import android.os.Build.VERSION_CODES import android.os.Bundle import android.os.Environment +import android.os.Looper import android.os.PowerManager import android.provider.Settings import android.widget.Toast @@ -30,6 +31,7 @@ import com.google.android.material.dialog.MaterialAlertDialogBuilder import com.yausername.youtubedl_android.YoutubeDL import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext import kotlinx.serialization.json.Json import java.io.File import java.util.* @@ -55,6 +57,7 @@ class SettingsFragment : PreferenceFragmentCompat() { private var meteredNetwork: SwitchPreferenceCompat? = null private var apiKey: EditTextPreference? = null private var homeRecommendations: SwitchPreferenceCompat? = null + private var locale: ListPreference? = null private var concurrentFragments: SeekBarPreference? = null private var concurrentDownloads: SeekBarPreference? = null private var limitRate: EditTextPreference? = null @@ -129,6 +132,7 @@ class SettingsFragment : PreferenceFragmentCompat() { meteredNetwork = findPreference("metered_networks") apiKey = findPreference("api_key") homeRecommendations = findPreference("home_recommendations") + locale = findPreference("locale") concurrentFragments = findPreference("concurrent_fragments") concurrentDownloads = findPreference("concurrent_downloads") limitRate = findPreference("limit_rate") @@ -207,6 +211,7 @@ class SettingsFragment : PreferenceFragmentCompat() { editor.putBoolean("metered_networks", meteredNetwork!!.isChecked) editor.putString("api_key", apiKey!!.text) editor.putBoolean("home_recommendations", homeRecommendations!!.isChecked) + editor.putString("locale", locale!!.value) editor.putInt("concurrent_fragments", concurrentFragments!!.value) editor.putInt("concurrent_downloads", concurrentDownloads!!.value) editor.putString("limit_rate", limitRate!!.text) @@ -420,6 +425,14 @@ class SettingsFragment : PreferenceFragmentCompat() { editor.apply() true } + locale!!.summary = locale!!.value + locale!!.onPreferenceChangeListener = + Preference.OnPreferenceChangeListener { _: Preference?, newValue: Any -> + editor.putString("locale", newValue.toString()) + locale!!.summary = newValue.toString() + editor.apply() + true + } concurrentFragments!!.onPreferenceChangeListener = Preference.OnPreferenceChangeListener { _: Preference?, newValue: Any -> val value = newValue.toString().toInt() @@ -698,10 +711,15 @@ class SettingsFragment : PreferenceFragmentCompat() { // } version!!.onPreferenceClickListener = Preference.OnPreferenceClickListener { - lifecycleScope.launch(Dispatchers.IO){ - updateUtil!!.updateApp(){ msg -> - Toast.makeText(context, msg, Toast.LENGTH_SHORT).show() + lifecycleScope.launch{ + withContext(Dispatchers.IO){ + updateUtil!!.updateApp{ msg -> + lifecycleScope.launch(Dispatchers.Main){ + Toast.makeText(context, msg, Toast.LENGTH_SHORT).show() + } + } } + } true } diff --git a/app/src/main/java/com/deniscerri/ytdlnis/util/InfoUtil.kt b/app/src/main/java/com/deniscerri/ytdlnis/util/InfoUtil.kt index 31dc190c..8809e8c5 100644 --- a/app/src/main/java/com/deniscerri/ytdlnis/util/InfoUtil.kt +++ b/app/src/main/java/com/deniscerri/ytdlnis/util/InfoUtil.kt @@ -35,6 +35,7 @@ class InfoUtil(private val context: Context) { sharedPreferences = context.getSharedPreferences("root_preferences", Activity.MODE_PRIVATE) key = sharedPreferences.getString("api_key", "") + countryCODE = sharedPreferences.getString("locale", "")!! } catch (e: Exception) { e.printStackTrace() } @@ -42,7 +43,7 @@ class InfoUtil(private val context: Context) { } private fun init(){ - if (countryCODE == null){ + if (countryCODE.isEmpty()){ val country = genericRequest("https://ipwho.is/") countryCODE = try { country.getString("country_code") @@ -843,6 +844,6 @@ class InfoUtil(private val context: Context) { companion object { private const val TAG = "API MANAGER" private const val invidousURL = "https://invidious.nerdvpn.de/api/v1/" - private var countryCODE: String? = null + private var countryCODE: String = "" } } \ No newline at end of file diff --git a/app/src/main/java/com/deniscerri/ytdlnis/work/TerminalDownloadWorker.kt b/app/src/main/java/com/deniscerri/ytdlnis/work/TerminalDownloadWorker.kt index 06cbbf3a..bdc3a004 100644 --- a/app/src/main/java/com/deniscerri/ytdlnis/work/TerminalDownloadWorker.kt +++ b/app/src/main/java/com/deniscerri/ytdlnis/work/TerminalDownloadWorker.kt @@ -106,7 +106,7 @@ class TerminalDownloadWorker( }, 1000) } - if (it.out.length > 5000){ + if (it.out.length > 500){ outputFile.appendText("${it.out}\n") if (logDownloads && logFile.exists()){ logFile.appendText("${it.out}\n") diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index b524f32d..f3d60761 100644 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -199,4 +199,488 @@ yellow monochrome + + + + @string/defaultValue + Afghanistan + Albania + Algeria + American Samoa + Andorra + Angola + Anguilla + Antarctica + Antigua and Barbuda + Argentina + Armenia + Aruba + Australia + Austria + Azerbaijan + Bahrain + Bangladesh + Barbados + Belarus + Belgium + Belize + Benin + Bermuda + Bhutan + Bolivia + Bosnia and Herzegovina + Botswana + Bouvet Island + Brazil + British Indian Ocean Territory + British Virgin Islands + Brunei + Bulgaria + Burkina Faso + Burundi + Cambodia + Cameroon + Canada + Cape Verde + Cayman Islands + Central African Republic + Chad + Chile + China + Christmas Island + Cocos (Keeling) Islands + Colombia + Comoros + Congo + Cook Islands + Costa Rica + Cote d\'Ivoire + Croatia + Cuba + Cyprus + Czech Republic + Democratic Republic of the Congo + Denmark + Djibouti + Dominica + Dominican Republic + East Timor + Ecuador + Egypt + El Salvador + Equatorial Guinea + Eritrea + Estonia + Ethiopia + Faeroe Islands + Falkland Islands + Fiji + Finland + France + French Guiana + French Polynesia + French Southern Territories + Gabon + Georgia + Germany + Ghana + Gibraltar + Greece + Greenland + Grenada + Guadeloupe + Guam + Guatemala + Guinea + Guinea-Bissau + Guyana + Haiti + Heard Island and McDonald Islands + Honduras + Hong Kong + Hungary + Iceland + India + Indonesia + Iran + Iraq + Ireland + Israel + Italy + Jamaica + Japan + Jordan + Kazakhstan + Kenya + Kiribati + Kuwait + Kyrgyzstan + Laos + Latvia + Lebanon + Lesotho + Liberia + Libya + Liechtenstein + Lithuania + Luxembourg + Macau + Madagascar + Malawi + Malaysia + Maldives + Mali + Malta + Marshall Islands + Martinique + Mauritania + Mauritius + Mayotte + Mexico + Micronesia + Moldova + Monaco + Mongolia + Montenegro + Montserrat + Morocco + Mozambique + Myanmar + Namibia + Nauru + Nepal + Netherlands + New Caledonia + New Zealand + Nicaragua + Niger + Nigeria + Niue + Norfolk Island + North Korea + Northern Marianas + Norway + Oman + Pakistan + Palau + Panama + Papua New Guinea + Paraguay + Peru + Philippines + Pitcairn Islands + Poland + Portugal + Puerto Rico + Qatar + Reunion + Romania + Russia + Rwanda + Saint Helena + Saint Kitts and Nevis + Saint Lucia + Saint Pierre and Miquelon + Saint Vincent and the Grenadines + Samoa + San Marino + Saudi Arabia + Senegal + Serbia + Seychelles + Sierra Leone + Singapore + Slovakia + Slovenia + Solomon Islands + Somalia + South Africa + South Georgia and the South Sandwich Islands + South Korea + South Sudan + Spain + Sri Lanka + Sudan + Suriname + Svalbard and Jan Mayen + Swaziland + Sweden + Switzerland + Syria + Taiwan + Tajikistan + Tanzania + Thailand + The Bahamas + The Gambia + Togo + Tokelau + Tonga + Trinidad and Tobago + Tunisia + Turkey + Turkmenistan + Turks and Caicos Islands + Tuvalu + Virgin Islands + Uganda + Ukraine + United Arab Emirates + United Kingdom + United States + United States Minor Outlying Islands + Uruguay + Uzbekistan + Vanuatu + Vatican City + Venezuela + Vietnam + Wallis and Futuna + Western Sahara + Yemen + Zambia + Zimbabwe + + + + + AF + AL + DZ + AS + AD + AO + AI + AQ + AG + AR + AM + AW + AU + AT + AZ + BH + BD + BB + BY + BE + BZ + BJ + BM + BT + BO + BA + BW + BV + BR + IO + VG + BN + BG + BF + BI + KH + CM + CA + CV + KY + CF + TD + CL + CN + CX + CC + CO + KM + CD + CK + CR + CI + HR + CU + CY + CZ + CD + DK + DJ + DM + DO + TL + EC + EG + SV + GQ + ER + EE + ET + FO + FK + FJ + FI + FR + GF + PF + TF + GA + GE + DE + GH + GI + GR + GL + GD + GP + GU + GT + GN + GW + GY + HT + HM + HN + HK + HU + IS + IN + ID + IR + IQ + IE + IM + IT + JM + JP + JO + KZ + KE + KI + KW + KG + LA + LV + LB + LS + LR + LY + LI + LT + LU + MO + MG + MW + MY + MV + ML + MT + MH + MQ + MR + MU + YT + MX + FM + MD + MC + MN + ME + MS + MA + MZ + MM + NA + NR + NP + NL + NC + NZ + NI + NE + NG + NU + NF + KR + MP + NO + OM + PK + PW + PA + PG + PY + PE + PH + PN + PL + PT + PR + QA + RE + RO + RU + RW + SH + KN + LC + PM + VC + WS + SM + SA + SN + RS + SC + SL + SG + SK + SI + SB + SO + ZA + GS + KR + SS + ES + LK + SD + SR + SJ + SZ + SE + CH + SY + TW + TJ + TZ + TH + BS + GM + TG + TK + TO + TT + TN + TR + TM + TC + TV + VG + UG + UA + AE + GB + US + UM + UY + UZ + VU + VA + VE + VN + WF + EH + YE + ZM + ZW + + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index e77fdcc2..cf8baed1 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -247,4 +247,5 @@ Preferred Format ID Download Now Download already exists + Preferred Locale \ No newline at end of file diff --git a/app/src/main/res/xml/root_preferences.xml b/app/src/main/res/xml/root_preferences.xml index 19e7d8f0..e1a0ac59 100644 --- a/app/src/main/res/xml/root_preferences.xml +++ b/app/src/main/res/xml/root_preferences.xml @@ -134,12 +134,6 @@ app:key="start_destination" app:title="@string/preferred_home_screen" /> - + + + +