Language name in extension setting (#111)

* Full language name in ext settings

* added more lang name

* changed alter dialog view

* sort language by names

* 3x grid for 360DP mobiles

* Default novel settings

* Oled for LN

* Lang full name

* Notification icon changed to dantotsu

* Remember 'sort' value
This commit is contained in:
aayush262 2024-01-04 21:22:07 +05:30 committed by GitHub
parent ef30869b62
commit 4286232d17
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
21 changed files with 1487 additions and 649 deletions

View file

@ -23,6 +23,7 @@ import ani.dantotsu.databinding.FragmentAnimeWatchBinding
import ani.dantotsu.media.Media
import ani.dantotsu.media.MediaDetailsActivity
import ani.dantotsu.media.MediaDetailsViewModel
import ani.dantotsu.others.LanguageMapper
import ani.dantotsu.parsers.AnimeParser
import ani.dantotsu.parsers.AnimeSources
import ani.dantotsu.parsers.HAnimeSources
@ -314,19 +315,19 @@ class AnimeWatchFragment : Fragment() {
if (show) View.GONE else View.VISIBLE
}
}
var itemSelected = false
val allSettings = pkg.sources.filterIsInstance<ConfigurableAnimeSource>()
if (allSettings.isNotEmpty()) {
var selectedSetting = allSettings[0]
if (allSettings.size > 1) {
val names = allSettings.map { it.lang }.toTypedArray()
val names = allSettings.sortedBy { it.lang }.map { LanguageMapper.mapLanguageCodeToName(it.lang) }.toTypedArray()
var selectedIndex = 0
val dialog = AlertDialog.Builder(requireContext())
val dialog = AlertDialog.Builder(requireContext() , R.style.MyPopup)
.setTitle("Select a Source")
.setSingleChoiceItems(names, selectedIndex) { _, which ->
.setSingleChoiceItems(names, selectedIndex) { dialog, which ->
selectedIndex = which
}
.setPositiveButton("OK") { dialog, _ ->
selectedSetting = allSettings[selectedIndex]
itemSelected = true
dialog.dismiss()
// Move the fragment transaction here
@ -343,10 +344,10 @@ class AnimeWatchFragment : Fragment() {
.commit()
}
}
.setNegativeButton("Cancel") { dialog, _ ->
dialog.cancel()
changeUIVisibility(true)
return@setNegativeButton
.setOnDismissListener {
if (!itemSelected) {
changeUIVisibility(true)
}
}
.show()
dialog.window?.setDimAmount(0.8f)