Add: Dialog handler to all Prefs Pages

This commit is contained in:
machiav3lli 2022-09-17 16:24:38 +02:00
parent c100784063
commit dc9298e51f
3 changed files with 24 additions and 6 deletions

View File

@ -19,6 +19,7 @@ import com.machiav3lli.fdroid.R
import com.machiav3lli.fdroid.content.Preferences import com.machiav3lli.fdroid.content.Preferences
import com.machiav3lli.fdroid.ui.compose.components.prefs.PreferenceGroup import com.machiav3lli.fdroid.ui.compose.components.prefs.PreferenceGroup
import com.machiav3lli.fdroid.ui.dialog.BaseDialog import com.machiav3lli.fdroid.ui.dialog.BaseDialog
import com.machiav3lli.fdroid.ui.dialog.EnumSelectionPrefDialogUI
@OptIn(ExperimentalMaterial3Api::class) @OptIn(ExperimentalMaterial3Api::class)
@Composable @Composable
@ -65,8 +66,12 @@ fun PrefsOtherPage() {
if (openDialog.value) { if (openDialog.value) {
BaseDialog(openDialogCustom = openDialog) { BaseDialog(openDialogCustom = openDialog) {
when (dialogPref) { when (dialogPref?.default?.value) {
// TODO is String -> {} //TODO
is Preferences.Enumeration<*> -> EnumSelectionPrefDialogUI(
prefKey = dialogPref as Preferences.Key<Preferences.Enumeration<*>>,
openDialogCustom = openDialog
)
else -> {} else -> {}
} }
} }

View File

@ -19,6 +19,7 @@ import com.machiav3lli.fdroid.R
import com.machiav3lli.fdroid.content.Preferences import com.machiav3lli.fdroid.content.Preferences
import com.machiav3lli.fdroid.ui.compose.components.prefs.PreferenceGroup import com.machiav3lli.fdroid.ui.compose.components.prefs.PreferenceGroup
import com.machiav3lli.fdroid.ui.dialog.BaseDialog import com.machiav3lli.fdroid.ui.dialog.BaseDialog
import com.machiav3lli.fdroid.ui.dialog.EnumSelectionPrefDialogUI
import com.machiav3lli.fdroid.ui.dialog.LanguagePrefDialogUI import com.machiav3lli.fdroid.ui.dialog.LanguagePrefDialogUI
@OptIn(ExperimentalMaterial3Api::class) @OptIn(ExperimentalMaterial3Api::class)
@ -72,8 +73,12 @@ fun PrefsPersonalPage() {
if (openDialog.value) { if (openDialog.value) {
BaseDialog(openDialogCustom = openDialog) { BaseDialog(openDialogCustom = openDialog) {
when (dialogPref) { when (dialogPref?.default?.value) {
Preferences.Key.Language -> LanguagePrefDialogUI( is String -> LanguagePrefDialogUI(
openDialogCustom = openDialog
)
is Preferences.Enumeration<*> -> EnumSelectionPrefDialogUI(
prefKey = dialogPref as Preferences.Key<Preferences.Enumeration<*>>,
openDialogCustom = openDialog openDialogCustom = openDialog
) )
else -> {} else -> {}

View File

@ -19,6 +19,8 @@ import com.machiav3lli.fdroid.R
import com.machiav3lli.fdroid.content.Preferences import com.machiav3lli.fdroid.content.Preferences
import com.machiav3lli.fdroid.ui.compose.components.prefs.PreferenceGroup import com.machiav3lli.fdroid.ui.compose.components.prefs.PreferenceGroup
import com.machiav3lli.fdroid.ui.dialog.BaseDialog import com.machiav3lli.fdroid.ui.dialog.BaseDialog
import com.machiav3lli.fdroid.ui.dialog.EnumSelectionPrefDialogUI
import com.machiav3lli.fdroid.ui.dialog.LanguagePrefDialogUI
@OptIn(ExperimentalMaterial3Api::class) @OptIn(ExperimentalMaterial3Api::class)
@Composable @Composable
@ -80,8 +82,14 @@ fun PrefsUpdatesPage() {
if (openDialog.value) { if (openDialog.value) {
BaseDialog(openDialogCustom = openDialog) { BaseDialog(openDialogCustom = openDialog) {
when (dialogPref) { when (dialogPref?.default?.value) {
// TODO is String -> LanguagePrefDialogUI(
openDialogCustom = openDialog
)
is Preferences.Enumeration<*> -> EnumSelectionPrefDialogUI(
prefKey = dialogPref as Preferences.Key<Preferences.Enumeration<*>>,
openDialogCustom = openDialog
)
else -> {} else -> {}
} }
} }