Fix throttle setting label on K2 (#120)
This commit is contained in:
parent
a0a1ad6f7b
commit
cff4b07d7d
@ -70,8 +70,8 @@ enum class RefreshRate(val id: String, val k2Ms: Long, val k3Ms: Long) {
|
|||||||
SLOW("slow", 5_000L, 3_000L),
|
SLOW("slow", 5_000L, 3_000L),
|
||||||
MINIMUM("minimum", 10_000L, 10_000L);
|
MINIMUM("minimum", 10_000L, 10_000L);
|
||||||
|
|
||||||
fun getDescription(karooSystemService: KarooSystemService): String {
|
fun getDescription(isOnK2: Boolean): String {
|
||||||
return if (karooSystemService.hardwareType == HardwareType.K2) {
|
return if (isOnK2) {
|
||||||
when (this) {
|
when (this) {
|
||||||
FAST -> "Fast (1s)"
|
FAST -> "Fast (1s)"
|
||||||
STANDARD -> "Standard (2s)"
|
STANDARD -> "Standard (2s)"
|
||||||
|
|||||||
@ -84,6 +84,7 @@ fun SettingsScreen(onFinish: () -> Unit) {
|
|||||||
|
|
||||||
var selectedWeatherProvider by remember { mutableStateOf(WeatherDataProvider.OPEN_METEO) }
|
var selectedWeatherProvider by remember { mutableStateOf(WeatherDataProvider.OPEN_METEO) }
|
||||||
var openWeatherMapApiKey by remember { mutableStateOf("") }
|
var openWeatherMapApiKey by remember { mutableStateOf("") }
|
||||||
|
var isK2 by remember { mutableStateOf(false) }
|
||||||
|
|
||||||
LaunchedEffect(Unit) {
|
LaunchedEffect(Unit) {
|
||||||
ctx.streamSettings(karooSystem).collect { settings ->
|
ctx.streamSettings(karooSystem).collect { settings ->
|
||||||
@ -102,6 +103,7 @@ fun SettingsScreen(onFinish: () -> Unit) {
|
|||||||
LaunchedEffect(Unit) {
|
LaunchedEffect(Unit) {
|
||||||
karooSystem.connect { connected ->
|
karooSystem.connect { connected ->
|
||||||
karooConnected = connected
|
karooConnected = connected
|
||||||
|
isK2 = karooSystem.hardwareType == io.hammerhead.karooext.models.HardwareType.K2
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -151,8 +153,8 @@ fun SettingsScreen(onFinish: () -> Unit) {
|
|||||||
.verticalScroll(rememberScrollState())
|
.verticalScroll(rememberScrollState())
|
||||||
.fillMaxWidth(), verticalArrangement = Arrangement.spacedBy(10.dp)
|
.fillMaxWidth(), verticalArrangement = Arrangement.spacedBy(10.dp)
|
||||||
) {
|
) {
|
||||||
val refreshRateDropdownOptions = RefreshRate.entries.toList().map { unit -> DropdownOption(unit.id, unit.getDescription(karooSystem)) }
|
val refreshRateDropdownOptions = remember(isK2) { RefreshRate.entries.toList().map { unit -> DropdownOption(unit.id, unit.getDescription(isK2)) } }
|
||||||
val refreshRateSelection by remember(refreshRateSetting) {
|
val refreshRateSelection by remember(refreshRateSetting, isK2) {
|
||||||
mutableStateOf(refreshRateDropdownOptions.find { option -> option.id == refreshRateSetting.id }!!)
|
mutableStateOf(refreshRateDropdownOptions.find { option -> option.id == refreshRateSetting.id }!!)
|
||||||
}
|
}
|
||||||
Dropdown(
|
Dropdown(
|
||||||
@ -160,8 +162,7 @@ fun SettingsScreen(onFinish: () -> Unit) {
|
|||||||
options = refreshRateDropdownOptions,
|
options = refreshRateDropdownOptions,
|
||||||
selected = refreshRateSelection
|
selected = refreshRateSelection
|
||||||
) { selectedOption ->
|
) { selectedOption ->
|
||||||
refreshRateSetting =
|
refreshRateSetting = RefreshRate.entries.find { unit -> unit.id == selectedOption.id }!!
|
||||||
RefreshRate.entries.find { unit -> unit.id == selectedOption.id }!!
|
|
||||||
}
|
}
|
||||||
|
|
||||||
val windDirectionIndicatorSettingDropdownOptions =
|
val windDirectionIndicatorSettingDropdownOptions =
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user