mirror of
https://github.com/libre-tube/LibreTube.git
synced 2025-04-29 00:10:32 +05:30
Merge pull request #1368 from Bnyro/master
Show a snackbar when trending unavailable for region
This commit is contained in:
commit
b4e8ee5989
6
app/src/main/java/com/github/libretube/obj/Country.kt
Normal file
6
app/src/main/java/com/github/libretube/obj/Country.kt
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
package com.github.libretube.obj
|
||||||
|
|
||||||
|
data class Country(
|
||||||
|
val name: String,
|
||||||
|
val code: String
|
||||||
|
)
|
@ -1,11 +1,13 @@
|
|||||||
package com.github.libretube.ui.fragments
|
package com.github.libretube.ui.fragments
|
||||||
|
|
||||||
|
import android.content.Intent
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
|
import android.widget.Toast.makeText
|
||||||
import androidx.lifecycle.lifecycleScope
|
import androidx.lifecycle.lifecycleScope
|
||||||
import androidx.recyclerview.widget.GridLayoutManager
|
import androidx.recyclerview.widget.GridLayoutManager
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
@ -14,6 +16,8 @@ import com.github.libretube.api.RetrofitInstance
|
|||||||
import com.github.libretube.constants.PreferenceKeys
|
import com.github.libretube.constants.PreferenceKeys
|
||||||
import com.github.libretube.databinding.FragmentHomeBinding
|
import com.github.libretube.databinding.FragmentHomeBinding
|
||||||
import com.github.libretube.extensions.TAG
|
import com.github.libretube.extensions.TAG
|
||||||
|
import com.github.libretube.extensions.getStyledSnackBar
|
||||||
|
import com.github.libretube.ui.activities.SettingsActivity
|
||||||
import com.github.libretube.ui.adapters.ChannelAdapter
|
import com.github.libretube.ui.adapters.ChannelAdapter
|
||||||
import com.github.libretube.ui.adapters.TrendingAdapter
|
import com.github.libretube.ui.adapters.TrendingAdapter
|
||||||
import com.github.libretube.ui.base.BaseFragment
|
import com.github.libretube.ui.base.BaseFragment
|
||||||
@ -79,6 +83,26 @@ class HomeFragment : BaseFragment() {
|
|||||||
}
|
}
|
||||||
runOnUiThread {
|
runOnUiThread {
|
||||||
binding.progressBar.visibility = View.GONE
|
binding.progressBar.visibility = View.GONE
|
||||||
|
|
||||||
|
// show a [SnackBar] if there are no trending videos available
|
||||||
|
if (response.isEmpty()) {
|
||||||
|
binding.root.getStyledSnackBar(
|
||||||
|
R.string.change_region
|
||||||
|
)
|
||||||
|
.setAction(
|
||||||
|
R.string.settings
|
||||||
|
) {
|
||||||
|
startActivity(
|
||||||
|
Intent(
|
||||||
|
context,
|
||||||
|
SettingsActivity::class.java
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
.show()
|
||||||
|
return@runOnUiThread
|
||||||
|
}
|
||||||
|
|
||||||
if (
|
if (
|
||||||
PreferenceHelper.getBoolean(
|
PreferenceHelper.getBoolean(
|
||||||
PreferenceKeys.ALTERNATIVE_TRENDING_LAYOUT,
|
PreferenceKeys.ALTERNATIVE_TRENDING_LAYOUT,
|
||||||
|
@ -11,6 +11,7 @@ import com.github.libretube.ui.activities.SettingsActivity
|
|||||||
import com.github.libretube.ui.base.BasePreferenceFragment
|
import com.github.libretube.ui.base.BasePreferenceFragment
|
||||||
import com.github.libretube.ui.dialogs.NavBarOptionsDialog
|
import com.github.libretube.ui.dialogs.NavBarOptionsDialog
|
||||||
import com.github.libretube.ui.dialogs.RequireRestartDialog
|
import com.github.libretube.ui.dialogs.RequireRestartDialog
|
||||||
|
import com.github.libretube.util.LocaleHelper
|
||||||
import com.github.libretube.util.PreferenceHelper
|
import com.github.libretube.util.PreferenceHelper
|
||||||
|
|
||||||
class GeneralSettings : BasePreferenceFragment() {
|
class GeneralSettings : BasePreferenceFragment() {
|
||||||
@ -28,6 +29,9 @@ class GeneralSettings : BasePreferenceFragment() {
|
|||||||
true
|
true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
val region = findPreference<ListPreference>("region")
|
||||||
|
region?.let { setupRegionPref(it) }
|
||||||
|
|
||||||
val autoRotation = findPreference<SwitchPreferenceCompat>(PreferenceKeys.AUTO_ROTATION)
|
val autoRotation = findPreference<SwitchPreferenceCompat>(PreferenceKeys.AUTO_ROTATION)
|
||||||
autoRotation?.setOnPreferenceChangeListener { _, _ ->
|
autoRotation?.setOnPreferenceChangeListener { _, _ ->
|
||||||
val restartDialog = RequireRestartDialog()
|
val restartDialog = RequireRestartDialog()
|
||||||
@ -57,4 +61,21 @@ class GeneralSettings : BasePreferenceFragment() {
|
|||||||
true
|
true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun setupRegionPref(preference: ListPreference) {
|
||||||
|
val countries = LocaleHelper.getAvailableCountries()
|
||||||
|
val countryNames = countries.map { it.name }
|
||||||
|
.toMutableList()
|
||||||
|
countryNames.add(0, requireContext().getString(R.string.systemLanguage))
|
||||||
|
|
||||||
|
val countryCodes = countries.map { it.code }
|
||||||
|
.toMutableList()
|
||||||
|
countryCodes.add(0, "sys")
|
||||||
|
|
||||||
|
preference.entries = countryNames.toTypedArray()
|
||||||
|
preference.entryValues = countryCodes.toTypedArray()
|
||||||
|
preference.summaryProvider = Preference.SummaryProvider<ListPreference> {
|
||||||
|
it.entry
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -8,6 +8,7 @@ import com.github.libretube.R
|
|||||||
import com.github.libretube.constants.PreferenceKeys
|
import com.github.libretube.constants.PreferenceKeys
|
||||||
import com.github.libretube.ui.activities.SettingsActivity
|
import com.github.libretube.ui.activities.SettingsActivity
|
||||||
import com.github.libretube.ui.base.BasePreferenceFragment
|
import com.github.libretube.ui.base.BasePreferenceFragment
|
||||||
|
import com.github.libretube.util.LocaleHelper
|
||||||
import com.github.libretube.util.PreferenceHelper
|
import com.github.libretube.util.PreferenceHelper
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
@ -36,24 +37,24 @@ class PlayerSettings : BasePreferenceFragment() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
val defaultSubtitle = findPreference<ListPreference>(PreferenceKeys.DEFAULT_SUBTITLE)
|
val defaultSubtitle = findPreference<ListPreference>(PreferenceKeys.DEFAULT_SUBTITLE)
|
||||||
val locales: Array<Locale> = Locale.getAvailableLocales()
|
defaultSubtitle?.let { setupSubtitlePref(it) }
|
||||||
val localeNames = ArrayList<String>()
|
}
|
||||||
val localeCodes = ArrayList<String>()
|
|
||||||
|
|
||||||
localeNames.add(context?.getString(R.string.none)!!)
|
private fun setupSubtitlePref(preference: ListPreference) {
|
||||||
localeCodes.add("")
|
val locales = LocaleHelper.getAvailableLocales()
|
||||||
|
val localeNames = locales.map { it.name }
|
||||||
|
.toMutableList()
|
||||||
|
localeNames.add(0, requireContext().getString(R.string.none))
|
||||||
|
|
||||||
locales.forEach {
|
val localeCodes = locales.map { it.code }
|
||||||
if (!localeNames.contains(it.getDisplayLanguage())) {
|
.toMutableList()
|
||||||
localeNames.add(it.getDisplayLanguage())
|
localeCodes.add(0, "")
|
||||||
localeCodes.add(it.language)
|
|
||||||
}
|
preference.entries = localeNames.toTypedArray()
|
||||||
}
|
preference.entryValues = localeCodes.toTypedArray()
|
||||||
defaultSubtitle?.entries = localeNames.toTypedArray()
|
preference.summaryProvider =
|
||||||
defaultSubtitle?.entryValues = localeCodes.toTypedArray()
|
Preference.SummaryProvider<ListPreference> {
|
||||||
defaultSubtitle?.summaryProvider =
|
it.entry
|
||||||
Preference.SummaryProvider<ListPreference> { preference ->
|
|
||||||
preference.entry
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4,6 +4,7 @@ import android.content.Context
|
|||||||
import android.os.Build
|
import android.os.Build
|
||||||
import android.telephony.TelephonyManager
|
import android.telephony.TelephonyManager
|
||||||
import com.github.libretube.constants.PreferenceKeys
|
import com.github.libretube.constants.PreferenceKeys
|
||||||
|
import com.github.libretube.obj.Country
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
object LocaleHelper {
|
object LocaleHelper {
|
||||||
@ -33,11 +34,7 @@ object LocaleHelper {
|
|||||||
val res = context.resources
|
val res = context.resources
|
||||||
val dm = res.displayMetrics
|
val dm = res.displayMetrics
|
||||||
val conf = res.configuration
|
val conf = res.configuration
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
|
conf.setLocale(locale)
|
||||||
conf.setLocale(locale)
|
|
||||||
} else {
|
|
||||||
conf.locale = locale
|
|
||||||
}
|
|
||||||
res.updateConfiguration(conf, dm)
|
res.updateConfiguration(conf, dm)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -81,10 +78,46 @@ object LocaleHelper {
|
|||||||
|
|
||||||
private fun detectLocaleCountry(context: Context): String? {
|
private fun detectLocaleCountry(context: Context): String? {
|
||||||
try {
|
try {
|
||||||
return context.resources.configuration.locales[0].country
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||||
|
return context.resources.configuration.locales[0].country
|
||||||
|
}
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
e.printStackTrace()
|
e.printStackTrace()
|
||||||
}
|
}
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun getAvailableCountries(): List<Country> {
|
||||||
|
val isoCountries = Locale.getISOCountries()
|
||||||
|
val countries = mutableListOf<Country>()
|
||||||
|
isoCountries.forEach { countryCode ->
|
||||||
|
val locale = Locale("", countryCode)
|
||||||
|
val countryName = locale.displayCountry
|
||||||
|
countries.add(
|
||||||
|
Country(
|
||||||
|
countryName,
|
||||||
|
countryCode
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
countries.sortBy { it.name }
|
||||||
|
return countries
|
||||||
|
}
|
||||||
|
|
||||||
|
fun getAvailableLocales(): List<Country> {
|
||||||
|
val availableLocales: Array<Locale> = Locale.getAvailableLocales()
|
||||||
|
val locales = mutableListOf<Country>()
|
||||||
|
|
||||||
|
availableLocales.forEach { locale ->
|
||||||
|
if (locales.filter { it.code == locale.language }.isEmpty()) {
|
||||||
|
locales.add(
|
||||||
|
Country(
|
||||||
|
locale.displayLanguage,
|
||||||
|
locale.language
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return locales
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -24,6 +24,7 @@
|
|||||||
<item>https://api.yt.jae.fi/</item>
|
<item>https://api.yt.jae.fi/</item>
|
||||||
<item>https://piped-api.privacy.com.de/</item>
|
<item>https://piped-api.privacy.com.de/</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
|
|
||||||
<string-array name="shareHostsList">
|
<string-array name="shareHostsList">
|
||||||
<item>youtube.com"</item>
|
<item>youtube.com"</item>
|
||||||
<item>m.youtube.com"</item>
|
<item>m.youtube.com"</item>
|
||||||
@ -64,398 +65,6 @@
|
|||||||
<item>piped.mint.lgbt"</item>
|
<item>piped.mint.lgbt"</item>
|
||||||
<item>il.ax"</item>
|
<item>il.ax"</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
<string-array name="regions">
|
|
||||||
<item>@string/systemDefault</item>
|
|
||||||
<item>Afghanistan</item>
|
|
||||||
<item>Albania</item>
|
|
||||||
<item>Algeria</item>
|
|
||||||
<item>Andorra</item>
|
|
||||||
<item>Angola</item>
|
|
||||||
<item>Antigua and Barbuda</item>
|
|
||||||
<item>Argentina</item>
|
|
||||||
<item>Armenia</item>
|
|
||||||
<item>Australia</item>
|
|
||||||
<item>Austria</item>
|
|
||||||
<item>Azerbaijan</item>
|
|
||||||
<item>Bahamas</item>
|
|
||||||
<item>Bahrain</item>
|
|
||||||
<item>Bangladesh</item>
|
|
||||||
<item>Barbados</item>
|
|
||||||
<item>Belarus</item>
|
|
||||||
<item>Belgium</item>
|
|
||||||
<item>Belize</item>
|
|
||||||
<item>Benin</item>
|
|
||||||
<item>Bhutan</item>
|
|
||||||
<item>Bolivia (Plurinational State of)</item>
|
|
||||||
<item>Bosnia and Herzegovina</item>
|
|
||||||
<item>Botswana</item>
|
|
||||||
<item>Brazil</item>
|
|
||||||
<item>Brunei Darussalam</item>
|
|
||||||
<item>Bulgaria</item>
|
|
||||||
<item>Burkina Faso</item>
|
|
||||||
<item>Burundi</item>
|
|
||||||
<item>Cabo Verde</item>
|
|
||||||
<item>Cambodia</item>
|
|
||||||
<item>Cameroon</item>
|
|
||||||
<item>Canada</item>
|
|
||||||
<item>Central African Republic</item>
|
|
||||||
<item>Chad</item>
|
|
||||||
<item>Chile</item>
|
|
||||||
<item>China</item>
|
|
||||||
<item>Colombia</item>
|
|
||||||
<item>Comoros</item>
|
|
||||||
<item>Congo</item>
|
|
||||||
<item>Congo, Democratic Republic of the</item>
|
|
||||||
<item>Costa Rica</item>
|
|
||||||
<item>Côte d\'Ivoire</item>
|
|
||||||
<item>Croatia</item>
|
|
||||||
<item>Cuba</item>
|
|
||||||
<item>Cyprus</item>
|
|
||||||
<item>Czechia</item>
|
|
||||||
<item>Denmark</item>
|
|
||||||
<item>Djibouti</item>
|
|
||||||
<item>Dominica</item>
|
|
||||||
<item>Dominican Republic</item>
|
|
||||||
<item>Ecuador</item>
|
|
||||||
<item>Egypt</item>
|
|
||||||
<item>El Salvador</item>
|
|
||||||
<item>Equatorial Guinea</item>
|
|
||||||
<item>Eritrea</item>
|
|
||||||
<item>Estonia</item>
|
|
||||||
<item>Eswatini</item>
|
|
||||||
<item>Ethiopia</item>
|
|
||||||
<item>Fiji</item>
|
|
||||||
<item>Finland</item>
|
|
||||||
<item>France</item>
|
|
||||||
<item>Gabon</item>
|
|
||||||
<item>Gambia</item>
|
|
||||||
<item>Georgia</item>
|
|
||||||
<item>Germany</item>
|
|
||||||
<item>Ghana</item>
|
|
||||||
<item>Greece</item>
|
|
||||||
<item>Grenada</item>
|
|
||||||
<item>Guatemala</item>
|
|
||||||
<item>Guinea</item>
|
|
||||||
<item>Guinea-Bissau</item>
|
|
||||||
<item>Guyana</item>
|
|
||||||
<item>Haiti</item>
|
|
||||||
<item>Honduras</item>
|
|
||||||
<item>Hungary</item>
|
|
||||||
<item>Iceland</item>
|
|
||||||
<item>India</item>
|
|
||||||
<item>Indonesia</item>
|
|
||||||
<item>Iran (Islamic Republic of)</item>
|
|
||||||
<item>Iraq</item>
|
|
||||||
<item>Ireland</item>
|
|
||||||
<item>Israel</item>
|
|
||||||
<item>Italy</item>
|
|
||||||
<item>Jamaica</item>
|
|
||||||
<item>Japan</item>
|
|
||||||
<item>Jordan</item>
|
|
||||||
<item>Kazakhstan</item>
|
|
||||||
<item>Kenya</item>
|
|
||||||
<item>Kiribati</item>
|
|
||||||
<item>Korea (Democratic People\'s Republic of)</item>
|
|
||||||
<item>Korea, Republic of</item>
|
|
||||||
<item>Kuwait</item>
|
|
||||||
<item>Kyrgyzstan</item>
|
|
||||||
<item>Lao People\'s Democratic Republic</item>
|
|
||||||
<item>Latvia</item>
|
|
||||||
<item>Lebanon</item>
|
|
||||||
<item>Lesotho</item>
|
|
||||||
<item>Liberia</item>
|
|
||||||
<item>Libya</item>
|
|
||||||
<item>Liechtenstein</item>
|
|
||||||
<item>Lithuania</item>
|
|
||||||
<item>Luxembourg</item>
|
|
||||||
<item>Madagascar</item>
|
|
||||||
<item>Malawi</item>
|
|
||||||
<item>Malaysia</item>
|
|
||||||
<item>Maldives</item>
|
|
||||||
<item>Mali</item>
|
|
||||||
<item>Malta</item>
|
|
||||||
<item>Marshall Islands</item>
|
|
||||||
<item>Mauritania</item>
|
|
||||||
<item>Mauritius</item>
|
|
||||||
<item>Mexico</item>
|
|
||||||
<item>Micronesia (Federated States of)</item>
|
|
||||||
<item>Moldova, Republic of</item>
|
|
||||||
<item>Monaco</item>
|
|
||||||
<item>Mongolia</item>
|
|
||||||
<item>Montenegro</item>
|
|
||||||
<item>Morocco</item>
|
|
||||||
<item>Mozambique</item>
|
|
||||||
<item>Myanmar</item>
|
|
||||||
<item>Namibia</item>
|
|
||||||
<item>Nauru</item>
|
|
||||||
<item>Nepal</item>
|
|
||||||
<item>Netherlands</item>
|
|
||||||
<item>New Zealand</item>
|
|
||||||
<item>Nicaragua</item>
|
|
||||||
<item>Niger</item>
|
|
||||||
<item>Nigeria</item>
|
|
||||||
<item>North Macedonia</item>
|
|
||||||
<item>Norway</item>
|
|
||||||
<item>Oman</item>
|
|
||||||
<item>Pakistan</item>
|
|
||||||
<item>Palau</item>
|
|
||||||
<item>Panama</item>
|
|
||||||
<item>Papua New Guinea</item>
|
|
||||||
<item>Paraguay</item>
|
|
||||||
<item>Peru</item>
|
|
||||||
<item>Philippines</item>
|
|
||||||
<item>Poland</item>
|
|
||||||
<item>Portugal</item>
|
|
||||||
<item>Qatar</item>
|
|
||||||
<item>Romania</item>
|
|
||||||
<item>Russian Federation</item>
|
|
||||||
<item>Rwanda</item>
|
|
||||||
<item>Saint Kitts and Nevis</item>
|
|
||||||
<item>Saint Lucia</item>
|
|
||||||
<item>Saint Vincent and the Grenadines</item>
|
|
||||||
<item>Samoa</item>
|
|
||||||
<item>San Marino</item>
|
|
||||||
<item>Sao Tome and Principe</item>
|
|
||||||
<item>Saudi Arabia</item>
|
|
||||||
<item>Senegal</item>
|
|
||||||
<item>Serbia</item>
|
|
||||||
<item>Seychelles</item>
|
|
||||||
<item>Sierra Leone</item>
|
|
||||||
<item>Singapore</item>
|
|
||||||
<item>Slovakia</item>
|
|
||||||
<item>Slovenia</item>
|
|
||||||
<item>Solomon Islands</item>
|
|
||||||
<item>Somalia</item>
|
|
||||||
<item>South Africa</item>
|
|
||||||
<item>South Sudan</item>
|
|
||||||
<item>Spain</item>
|
|
||||||
<item>Sri Lanka</item>
|
|
||||||
<item>Sudan</item>
|
|
||||||
<item>Suriname</item>
|
|
||||||
<item>Sweden</item>
|
|
||||||
<item>Switzerland</item>
|
|
||||||
<item>Syrian Arab Republic</item>
|
|
||||||
<item>Tajikistan</item>
|
|
||||||
<item>Tanzania, United Republic of</item>
|
|
||||||
<item>Thailand</item>
|
|
||||||
<item>Timor-Leste</item>
|
|
||||||
<item>Togo</item>
|
|
||||||
<item>Tonga</item>
|
|
||||||
<item>Trinidad and Tobago</item>
|
|
||||||
<item>Tunisia</item>
|
|
||||||
<item>Turkey</item>
|
|
||||||
<item>Turkmenistan</item>
|
|
||||||
<item>Tuvalu</item>
|
|
||||||
<item>Uganda</item>
|
|
||||||
<item>Ukraine</item>
|
|
||||||
<item>United Arab Emirates</item>
|
|
||||||
<item>United Kingdom of Great Britain and Northern Ireland</item>
|
|
||||||
<item>United States of America</item>
|
|
||||||
<item>Uruguay</item>
|
|
||||||
<item>Uzbekistan</item>
|
|
||||||
<item>Vanuatu</item>
|
|
||||||
<item>Venezuela (Bolivarian Republic of)</item>
|
|
||||||
<item>Viet Nam</item>
|
|
||||||
<item>Yemen</item>
|
|
||||||
<item>Zambia</item>
|
|
||||||
<item>Zimbabwe</item>
|
|
||||||
</string-array>
|
|
||||||
<string-array name="regionsValue">
|
|
||||||
<item>sys</item>
|
|
||||||
<item>AF</item>
|
|
||||||
<item>AL</item>
|
|
||||||
<item>DZ</item>
|
|
||||||
<item>AD</item>
|
|
||||||
<item>AO</item>
|
|
||||||
<item>AG</item>
|
|
||||||
<item>AR</item>
|
|
||||||
<item>AM</item>
|
|
||||||
<item>AU</item>
|
|
||||||
<item>AT</item>
|
|
||||||
<item>AZ</item>
|
|
||||||
<item>BS</item>
|
|
||||||
<item>BH</item>
|
|
||||||
<item>BD</item>
|
|
||||||
<item>BB</item>
|
|
||||||
<item>BY</item>
|
|
||||||
<item>BE</item>
|
|
||||||
<item>BZ</item>
|
|
||||||
<item>BJ</item>
|
|
||||||
<item>BT</item>
|
|
||||||
<item>BO</item>
|
|
||||||
<item>BA</item>
|
|
||||||
<item>BW</item>
|
|
||||||
<item>BR</item>
|
|
||||||
<item>BN</item>
|
|
||||||
<item>BG</item>
|
|
||||||
<item>BF</item>
|
|
||||||
<item>BI</item>
|
|
||||||
<item>CV</item>
|
|
||||||
<item>KH</item>
|
|
||||||
<item>CM</item>
|
|
||||||
<item>CA</item>
|
|
||||||
<item>CF</item>
|
|
||||||
<item>TD</item>
|
|
||||||
<item>CL</item>
|
|
||||||
<item>CN</item>
|
|
||||||
<item>CO</item>
|
|
||||||
<item>KM</item>
|
|
||||||
<item>CG</item>
|
|
||||||
<item>CD</item>
|
|
||||||
<item>CR</item>
|
|
||||||
<item>CI</item>
|
|
||||||
<item>HR</item>
|
|
||||||
<item>CU</item>
|
|
||||||
<item>CY</item>
|
|
||||||
<item>CZ</item>
|
|
||||||
<item>DK</item>
|
|
||||||
<item>DJ</item>
|
|
||||||
<item>DM</item>
|
|
||||||
<item>DO</item>
|
|
||||||
<item>EC</item>
|
|
||||||
<item>EG</item>
|
|
||||||
<item>SV</item>
|
|
||||||
<item>GQ</item>
|
|
||||||
<item>ER</item>
|
|
||||||
<item>EE</item>
|
|
||||||
<item>SZ</item>
|
|
||||||
<item>ET</item>
|
|
||||||
<item>FJ</item>
|
|
||||||
<item>FI</item>
|
|
||||||
<item>FR</item>
|
|
||||||
<item>GA</item>
|
|
||||||
<item>GM</item>
|
|
||||||
<item>GE</item>
|
|
||||||
<item>DE</item>
|
|
||||||
<item>GH</item>
|
|
||||||
<item>GR</item>
|
|
||||||
<item>GD</item>
|
|
||||||
<item>GT</item>
|
|
||||||
<item>GN</item>
|
|
||||||
<item>GW</item>
|
|
||||||
<item>GY</item>
|
|
||||||
<item>HT</item>
|
|
||||||
<item>HN</item>
|
|
||||||
<item>HU</item>
|
|
||||||
<item>IS</item>
|
|
||||||
<item>IN</item>
|
|
||||||
<item>ID</item>
|
|
||||||
<item>IR</item>
|
|
||||||
<item>IQ</item>
|
|
||||||
<item>IE</item>
|
|
||||||
<item>IL</item>
|
|
||||||
<item>IT</item>
|
|
||||||
<item>JM</item>
|
|
||||||
<item>JP</item>
|
|
||||||
<item>JO</item>
|
|
||||||
<item>KZ</item>
|
|
||||||
<item>KE</item>
|
|
||||||
<item>KI</item>
|
|
||||||
<item>KP</item>
|
|
||||||
<item>KR</item>
|
|
||||||
<item>KW</item>
|
|
||||||
<item>KG</item>
|
|
||||||
<item>LA</item>
|
|
||||||
<item>LV</item>
|
|
||||||
<item>LB</item>
|
|
||||||
<item>LS</item>
|
|
||||||
<item>LR</item>
|
|
||||||
<item>LY</item>
|
|
||||||
<item>LI</item>
|
|
||||||
<item>LT</item>
|
|
||||||
<item>LU</item>
|
|
||||||
<item>MG</item>
|
|
||||||
<item>MW</item>
|
|
||||||
<item>MY</item>
|
|
||||||
<item>MV</item>
|
|
||||||
<item>ML</item>
|
|
||||||
<item>MT</item>
|
|
||||||
<item>MH</item>
|
|
||||||
<item>MR</item>
|
|
||||||
<item>MU</item>
|
|
||||||
<item>MX</item>
|
|
||||||
<item>FM</item>
|
|
||||||
<item>MD</item>
|
|
||||||
<item>MC</item>
|
|
||||||
<item>MN</item>
|
|
||||||
<item>ME</item>
|
|
||||||
<item>MA</item>
|
|
||||||
<item>MZ</item>
|
|
||||||
<item>MM</item>
|
|
||||||
<item>NA</item>
|
|
||||||
<item>NR</item>
|
|
||||||
<item>NP</item>
|
|
||||||
<item>NL</item>
|
|
||||||
<item>NZ</item>
|
|
||||||
<item>NI</item>
|
|
||||||
<item>NE</item>
|
|
||||||
<item>NG</item>
|
|
||||||
<item>MK</item>
|
|
||||||
<item>NO</item>
|
|
||||||
<item>OM</item>
|
|
||||||
<item>PK</item>
|
|
||||||
<item>PW</item>
|
|
||||||
<item>PA</item>
|
|
||||||
<item>PG</item>
|
|
||||||
<item>PY</item>
|
|
||||||
<item>PE</item>
|
|
||||||
<item>PH</item>
|
|
||||||
<item>PL</item>
|
|
||||||
<item>PT</item>
|
|
||||||
<item>QA</item>
|
|
||||||
<item>RO</item>
|
|
||||||
<item>RU</item>
|
|
||||||
<item>RW</item>
|
|
||||||
<item>KN</item>
|
|
||||||
<item>LC</item>
|
|
||||||
<item>VC</item>
|
|
||||||
<item>WS</item>
|
|
||||||
<item>SM</item>
|
|
||||||
<item>ST</item>
|
|
||||||
<item>SA</item>
|
|
||||||
<item>SN</item>
|
|
||||||
<item>RS</item>
|
|
||||||
<item>SC</item>
|
|
||||||
<item>SL</item>
|
|
||||||
<item>SG</item>
|
|
||||||
<item>SK</item>
|
|
||||||
<item>SI</item>
|
|
||||||
<item>SB</item>
|
|
||||||
<item>SO</item>
|
|
||||||
<item>ZA</item>
|
|
||||||
<item>SS</item>
|
|
||||||
<item>ES</item>
|
|
||||||
<item>LK</item>
|
|
||||||
<item>SD</item>
|
|
||||||
<item>SR</item>
|
|
||||||
<item>SE</item>
|
|
||||||
<item>CH</item>
|
|
||||||
<item>SY</item>
|
|
||||||
<item>TJ</item>
|
|
||||||
<item>TZ</item>
|
|
||||||
<item>TH</item>
|
|
||||||
<item>TL</item>
|
|
||||||
<item>TG</item>
|
|
||||||
<item>TO</item>
|
|
||||||
<item>TT</item>
|
|
||||||
<item>TN</item>
|
|
||||||
<item>TR</item>
|
|
||||||
<item>TM</item>
|
|
||||||
<item>TV</item>
|
|
||||||
<item>UG</item>
|
|
||||||
<item>UA</item>
|
|
||||||
<item>AE</item>
|
|
||||||
<item>GB</item>
|
|
||||||
<item>US</item>
|
|
||||||
<item>UY</item>
|
|
||||||
<item>UZ</item>
|
|
||||||
<item>VU</item>
|
|
||||||
<item>VE</item>
|
|
||||||
<item>VN</item>
|
|
||||||
<item>YE</item>
|
|
||||||
<item>ZM</item>
|
|
||||||
<item>ZW</item>
|
|
||||||
</string-array>
|
|
||||||
|
|
||||||
<string-array name="languages">
|
<string-array name="languages">
|
||||||
<item>@string/systemLanguage</item>
|
<item>@string/systemLanguage</item>
|
||||||
|
@ -332,6 +332,7 @@
|
|||||||
<string name="play_next">Play next</string>
|
<string name="play_next">Play next</string>
|
||||||
<string name="navigation_bar">Navigation bar</string>
|
<string name="navigation_bar">Navigation bar</string>
|
||||||
<string name="select_at_least_one">Please select at least one item</string>
|
<string name="select_at_least_one">Please select at least one item</string>
|
||||||
|
<string name="change_region">Trending seems to be unavailable for the current region. Please select another in the settings.</string>
|
||||||
|
|
||||||
<!-- Notification channel strings -->
|
<!-- Notification channel strings -->
|
||||||
<string name="download_channel_name">Download Service</string>
|
<string name="download_channel_name">Download Service</string>
|
||||||
|
@ -7,11 +7,8 @@
|
|||||||
<ListPreference
|
<ListPreference
|
||||||
android:icon="@drawable/ic_region"
|
android:icon="@drawable/ic_region"
|
||||||
app:defaultValue="sys"
|
app:defaultValue="sys"
|
||||||
app:entries="@array/regions"
|
|
||||||
app:entryValues="@array/regionsValue"
|
|
||||||
app:key="region"
|
app:key="region"
|
||||||
app:title="@string/region"
|
app:title="@string/region" />
|
||||||
app:useSimpleSummaryProvider="true" />
|
|
||||||
|
|
||||||
<ListPreference
|
<ListPreference
|
||||||
android:icon="@drawable/ic_translate"
|
android:icon="@drawable/ic_translate"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user