From 5983424d4849c46ad296bddda78144e740414cf7 Mon Sep 17 00:00:00 2001 From: andrekir Date: Mon, 11 Mar 2024 22:27:14 -0300 Subject: [PATCH] refactor: remote admin channel validation --- app/src/main/java/com/geeksville/mesh/model/UIState.kt | 5 ++--- app/src/main/java/com/geeksville/mesh/ui/UsersFragment.kt | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/geeksville/mesh/model/UIState.kt b/app/src/main/java/com/geeksville/mesh/model/UIState.kt index ee39b03b..23ac2c36 100644 --- a/app/src/main/java/com/geeksville/mesh/model/UIState.kt +++ b/app/src/main/java/com/geeksville/mesh/model/UIState.kt @@ -423,9 +423,8 @@ class UIViewModel @Inject constructor( } } - val adminChannelIndex: Int /** matches [MeshService.adminChannelIndex] **/ - get() = channelSet.settingsList.indexOfFirst { it.name.equals("admin", ignoreCase = true) } - .coerceAtLeast(0) + val hasAdminChannel: Boolean + get() = channelSet.settingsList.any { it.name.equals("admin", ignoreCase = true) } /** * Write the persisted packet data out to a CSV file in the specified location. diff --git a/app/src/main/java/com/geeksville/mesh/ui/UsersFragment.kt b/app/src/main/java/com/geeksville/mesh/ui/UsersFragment.kt index 5bd02332..90c6a1f3 100644 --- a/app/src/main/java/com/geeksville/mesh/ui/UsersFragment.kt +++ b/app/src/main/java/com/geeksville/mesh/ui/UsersFragment.kt @@ -101,7 +101,7 @@ class UsersFragment : ScreenFragment("Users"), Logging { if (!model.isConnected()) return val node = nodes[position] val user = node.user ?: return - val showAdmin = position == 0 || model.adminChannelIndex > 0 + val showAdmin = position == 0 || model.hasAdminChannel val isIgnored = ignoreIncomingList.contains(node.num) val popup = PopupMenu(requireContext(), view) popup.inflate(R.menu.menu_nodes)