subdub toggle | regex fix (yomiroll) | idk I forgot
This commit is contained in:
parent
4a5eab13c9
commit
49b3c33fbc
8 changed files with 134 additions and 17 deletions
|
@ -1,6 +1,7 @@
|
|||
package ani.dantotsu.settings.extensionprefs
|
||||
|
||||
import android.content.Context
|
||||
import android.content.SharedPreferences
|
||||
import android.os.Bundle
|
||||
import android.util.TypedValue
|
||||
import androidx.core.os.bundleOf
|
||||
|
@ -8,6 +9,7 @@ import androidx.lifecycle.lifecycleScope
|
|||
import androidx.preference.DialogPreference
|
||||
import androidx.preference.EditTextPreference
|
||||
import androidx.preference.PreferenceFragmentCompat
|
||||
import androidx.preference.PreferenceManager
|
||||
import androidx.preference.forEach
|
||||
import androidx.preference.getOnBindEditTextListener
|
||||
import ani.dantotsu.snackString
|
||||
|
@ -46,7 +48,7 @@ class AnimeSourcePreferencesFragment : PreferenceFragmentCompat() {
|
|||
onCloseAction?.invoke()
|
||||
}
|
||||
|
||||
private fun populateAnimePreferenceScreen(): PreferenceScreen {
|
||||
fun populateAnimePreferenceScreen(): PreferenceScreen {
|
||||
val sourceId = requireArguments().getLong(SOURCE_ID)
|
||||
val source = Injekt.get<AnimeSourceManager>().get(sourceId) as? ConfigurableAnimeSource
|
||||
?: error("Source with id: $sourceId not found!")
|
||||
|
@ -93,3 +95,31 @@ class AnimeSourcePreferencesFragment : PreferenceFragmentCompat() {
|
|||
private const val SOURCE_ID = "source_id"
|
||||
}
|
||||
}
|
||||
|
||||
class InitialAnimeSourcePreferencesFragment(val sharedPreferences: SharedPreferences, val source: ConfigurableAnimeSource, val currContext: Context) : PreferenceFragmentCompat() {
|
||||
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
||||
preferenceScreen = try {
|
||||
populateAnimePreferenceScreen()
|
||||
} catch (e: Exception) {
|
||||
snackString(e.message ?: "Unknown error")
|
||||
preferenceManager.createPreferenceScreen(requireContext())
|
||||
}
|
||||
//set background color
|
||||
val color = TypedValue()
|
||||
requireContext().theme.resolveAttribute(
|
||||
com.google.android.material.R.attr.backgroundColor,
|
||||
color,
|
||||
true
|
||||
)
|
||||
view?.setBackgroundColor(color.data)
|
||||
}
|
||||
|
||||
|
||||
fun populateAnimePreferenceScreen(): PreferenceScreen {
|
||||
val dataStore = SharedPreferencesDataStore(sharedPreferences)
|
||||
preferenceManager.preferenceDataStore = dataStore
|
||||
val sourceScreen = preferenceManager.createPreferenceScreen(requireContext())
|
||||
source.setupPreferenceScreen(sourceScreen)
|
||||
return sourceScreen
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue