Added several tweaks to Settings and RadioControl screens

This commit is contained in:
Arty Bishop committed 2026-04-10 14:13:53 +01:00
1 parent 4a3a01729b
commit a94f95874b
14 files changed
+514 -505

No files matched your search

@@ -36,7 +36,7 @@ data class RadarState(
val selectedFrequency: Long? = null
)
sealed class RadarAction {
data class AddToCalendar(val name: String, val aosTime: Long, val losTime: Long) : RadarAction()
data class SelectTransmitter(val uuid: String) : RadarAction()
sealed interface RadarAction {
data class AddToCalendar(val name: String, val aosTime: Long, val losTime: Long) : RadarAction
data class SelectTransmitter(val uuid: String) : RadarAction
}
@@ -174,6 +174,10 @@ class RadarViewModel(
settingsRepo.rcSettings.value.frequencyState || settingsRepo.rcSettings.value.bluetoothFrequencyState
_uiState.update { state ->
if (!isFreqEnabled) {
// Skip update if nothing changed
if (state.transmitters == transmitters && state.selectedTransmitterUuid == null && state.selectedFrequency == null) {
return@update state
}
return@update state.copy(
transmitters = transmitters,
selectedTransmitterUuid = null,
@@ -191,6 +195,10 @@ class RadarViewModel(
else -> null
}
}
// Skip update if nothing changed
if (state.transmitters == transmitters && state.selectedTransmitterUuid == selectedUuid && state.selectedFrequency == freq) {
return@update state
}
state.copy(transmitters = transmitters, selectedTransmitterUuid = selectedUuid, selectedFrequency = freq)
}
}