Remove weather providers that are not available from settings screen
This commit is contained in:
parent
779e28e217
commit
1cc0d64020
@ -29,12 +29,15 @@ fun WeatherWidgetSettingsScreen() {
|
||||
val weatherProvider by viewModel.weatherProvider.observeAsState()
|
||||
ListPreference(
|
||||
title = stringResource(R.string.preference_weather_provider),
|
||||
items = listOf(
|
||||
stringResource(R.string.provider_metno) to WeatherProvider.MetNo,
|
||||
stringResource(R.string.provider_openweathermap) to WeatherProvider.OpenWeatherMap,
|
||||
stringResource(R.string.provider_here) to WeatherProvider.Here,
|
||||
stringResource(R.string.provider_brightsky) to WeatherProvider.BrightSky,
|
||||
),
|
||||
items = viewModel.availableProviders.map {
|
||||
when (it) {
|
||||
WeatherProvider.MetNo -> stringResource(R.string.provider_metno)
|
||||
WeatherProvider.OpenWeatherMap -> stringResource(R.string.provider_openweathermap)
|
||||
WeatherProvider.Here -> stringResource(R.string.provider_here)
|
||||
WeatherProvider.BrightSky -> stringResource(R.string.provider_brightsky)
|
||||
else -> "Unknown provider"
|
||||
} to it
|
||||
},
|
||||
onValueChanged = {
|
||||
if (it != null) viewModel.setWeatherProvider(it)
|
||||
},
|
||||
|
||||
@ -23,6 +23,8 @@ class WeatherWidgetSettingsScreenVM : ViewModel(), KoinComponent {
|
||||
private val dataStore: LauncherDataStore by inject()
|
||||
private val permissionsManager: PermissionsManager by inject()
|
||||
|
||||
val availableProviders = repository.getAvailableProviders()
|
||||
|
||||
val imperialUnits = dataStore.data.map { it.weather.imperialUnits }.asLiveData()
|
||||
fun setImperialUnits(imperialUnits: Boolean) {
|
||||
viewModelScope.launch {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user