Loading cardinal-android/app/src/main/java/earth/maps/cardinal/ui/settings/AdvancedSettingsScreen.kt +357 −325 Original line number Diff line number Diff line Loading @@ -62,41 +62,8 @@ import earth.maps.cardinal.R.dimen import earth.maps.cardinal.R.string import earth.maps.cardinal.ui.core.TOOLBAR_HEIGHT_DP @OptIn(ExperimentalMaterial3Api::class) @Composable fun AdvancedSettingsScreen( viewModel: SettingsViewModel = hiltViewModel<SettingsViewModel>() ) { val snackBarHostState = remember { SnackbarHostState() } Scaffold( snackbarHost = { SnackbarHost(snackBarHostState) }, contentWindowInsets = WindowInsets.safeDrawing, topBar = { TopAppBar(title = { Text( text = stringResource(string.advanced_settings_title), style = MaterialTheme.typography.headlineMedium, fontWeight = androidx.compose.ui.text.font.FontWeight.Bold ) }) }, content = { padding -> Box(modifier = Modifier.padding(padding)) { Column( modifier = Modifier .fillMaxSize() .verticalScroll(rememberScrollState()) ) { HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Continuous Location Tracking private fun ContinuousLocationTrackingSetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -137,14 +104,10 @@ fun AdvancedSettingsScreen( ) } } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Show Zoom FABs @Composable private fun ShowZoomFabsSetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -185,14 +148,10 @@ fun AdvancedSettingsScreen( ) } } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Time Format @Composable private fun TimeFormatSetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -237,14 +196,10 @@ fun AdvancedSettingsScreen( ) } } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Distance Unit @Composable private fun DistanceUnitSetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -292,16 +247,10 @@ fun AdvancedSettingsScreen( ) } } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // NEW SETTINGS GO HERE. // Pelias Base URL @Composable private fun PeliasBaseUrlSetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -336,14 +285,10 @@ fun AdvancedSettingsScreen( keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Uri) ) } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Pelias API Key @Composable private fun PeliasApiKeySetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -383,14 +328,10 @@ fun AdvancedSettingsScreen( keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Password) ) } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Valhalla Base URL @Composable private fun ValhallaBaseUrlSetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -425,14 +366,10 @@ fun AdvancedSettingsScreen( keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Uri) ) } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Valhalla API Key @Composable private fun ValhallaApiKeySetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -472,6 +409,101 @@ fun AdvancedSettingsScreen( keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Password) ) } } @OptIn(ExperimentalMaterial3Api::class) @Composable fun AdvancedSettingsScreen( viewModel: SettingsViewModel = hiltViewModel<SettingsViewModel>() ) { val snackBarHostState = remember { SnackbarHostState() } Scaffold( snackbarHost = { SnackbarHost(snackBarHostState) }, contentWindowInsets = WindowInsets.safeDrawing, topBar = { TopAppBar(title = { Text( text = stringResource(string.advanced_settings_title), style = MaterialTheme.typography.headlineMedium, fontWeight = androidx.compose.ui.text.font.FontWeight.Bold ) }) }, content = { padding -> Box(modifier = Modifier.padding(padding)) { Column( modifier = Modifier .fillMaxSize() .verticalScroll(rememberScrollState()) ) { HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) ContinuousLocationTrackingSetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) ShowZoomFabsSetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) TimeFormatSetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) DistanceUnitSetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // NEW SETTINGS GO HERE. PeliasBaseUrlSetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) PeliasApiKeySetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) ValhallaBaseUrlSetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) ValhallaApiKeySetting(viewModel) Spacer( modifier = Modifier Loading Loading
cardinal-android/app/src/main/java/earth/maps/cardinal/ui/settings/AdvancedSettingsScreen.kt +357 −325 Original line number Diff line number Diff line Loading @@ -62,41 +62,8 @@ import earth.maps.cardinal.R.dimen import earth.maps.cardinal.R.string import earth.maps.cardinal.ui.core.TOOLBAR_HEIGHT_DP @OptIn(ExperimentalMaterial3Api::class) @Composable fun AdvancedSettingsScreen( viewModel: SettingsViewModel = hiltViewModel<SettingsViewModel>() ) { val snackBarHostState = remember { SnackbarHostState() } Scaffold( snackbarHost = { SnackbarHost(snackBarHostState) }, contentWindowInsets = WindowInsets.safeDrawing, topBar = { TopAppBar(title = { Text( text = stringResource(string.advanced_settings_title), style = MaterialTheme.typography.headlineMedium, fontWeight = androidx.compose.ui.text.font.FontWeight.Bold ) }) }, content = { padding -> Box(modifier = Modifier.padding(padding)) { Column( modifier = Modifier .fillMaxSize() .verticalScroll(rememberScrollState()) ) { HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Continuous Location Tracking private fun ContinuousLocationTrackingSetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -137,14 +104,10 @@ fun AdvancedSettingsScreen( ) } } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Show Zoom FABs @Composable private fun ShowZoomFabsSetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -185,14 +148,10 @@ fun AdvancedSettingsScreen( ) } } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Time Format @Composable private fun TimeFormatSetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -237,14 +196,10 @@ fun AdvancedSettingsScreen( ) } } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Distance Unit @Composable private fun DistanceUnitSetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -292,16 +247,10 @@ fun AdvancedSettingsScreen( ) } } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // NEW SETTINGS GO HERE. // Pelias Base URL @Composable private fun PeliasBaseUrlSetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -336,14 +285,10 @@ fun AdvancedSettingsScreen( keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Uri) ) } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Pelias API Key @Composable private fun PeliasApiKeySetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -383,14 +328,10 @@ fun AdvancedSettingsScreen( keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Password) ) } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Valhalla Base URL @Composable private fun ValhallaBaseUrlSetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -425,14 +366,10 @@ fun AdvancedSettingsScreen( keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Uri) ) } } HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // Valhalla API Key @Composable private fun ValhallaApiKeySetting(viewModel: SettingsViewModel) { Column( modifier = Modifier .fillMaxWidth() Loading Loading @@ -472,6 +409,101 @@ fun AdvancedSettingsScreen( keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Password) ) } } @OptIn(ExperimentalMaterial3Api::class) @Composable fun AdvancedSettingsScreen( viewModel: SettingsViewModel = hiltViewModel<SettingsViewModel>() ) { val snackBarHostState = remember { SnackbarHostState() } Scaffold( snackbarHost = { SnackbarHost(snackBarHostState) }, contentWindowInsets = WindowInsets.safeDrawing, topBar = { TopAppBar(title = { Text( text = stringResource(string.advanced_settings_title), style = MaterialTheme.typography.headlineMedium, fontWeight = androidx.compose.ui.text.font.FontWeight.Bold ) }) }, content = { padding -> Box(modifier = Modifier.padding(padding)) { Column( modifier = Modifier .fillMaxSize() .verticalScroll(rememberScrollState()) ) { HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) ContinuousLocationTrackingSetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) ShowZoomFabsSetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) TimeFormatSetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) DistanceUnitSetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) // NEW SETTINGS GO HERE. PeliasBaseUrlSetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) PeliasApiKeySetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) ValhallaBaseUrlSetting(viewModel) HorizontalDivider( modifier = Modifier.padding(vertical = 8.dp), thickness = DividerDefaults.Thickness, color = MaterialTheme.colorScheme.outlineVariant ) ValhallaApiKeySetting(viewModel) Spacer( modifier = Modifier Loading