refactor: move ignoreIncoming logic to ViewModel

This commit is contained in:
andrekir 2024-11-12 08:46:47 -03:00
parent 417523967e
commit a980441fd1
2 changed files with 22 additions and 47 deletions

View file

@ -505,14 +505,21 @@ class UIViewModel @Inject constructor(
updateLoraConfig { it.copy { region = value } }
}
var ignoreIncomingList: MutableList<Int>
get() = config.lora.ignoreIncomingList
set(value) = updateLoraConfig {
it.copy {
ignoreIncoming.clear()
ignoreIncoming.addAll(value)
fun ignoreNode(nodeNum: Int) = updateLoraConfig {
it.copy {
val list = ignoreIncoming.toMutableList().apply {
if (contains(nodeNum)) {
debug("removing node $nodeNum from ignore list")
remove(nodeNum)
} else {
debug("adding node $nodeNum to ignore list")
add(nodeNum)
}
}
ignoreIncoming.clear()
ignoreIncoming.addAll(list)
}
}
// managed mode disables all access to configuration
val isManaged: Boolean get() = config.device.isManaged || config.security.isManaged