From 145988ad75d480341690065735527583410b4499 Mon Sep 17 00:00:00 2001 From: andrekir Date: Mon, 24 Apr 2023 22:11:36 -0300 Subject: [PATCH] refactor: improve parameter naming and type in config constructors --- .../mesh/ui/DeviceSettingsFragment.kt | 11 ++++------- .../config/CannedMessageConfigItemList.kt | 10 +++++----- .../ExternalNotificationConfigItemList.kt | 12 +++++------- .../config/PositionConfigItemList.kt | 18 +++++++++--------- 4 files changed, 23 insertions(+), 28 deletions(-) diff --git a/app/src/main/java/com/geeksville/mesh/ui/DeviceSettingsFragment.kt b/app/src/main/java/com/geeksville/mesh/ui/DeviceSettingsFragment.kt index 41d1504ad..55b902d8a 100644 --- a/app/src/main/java/com/geeksville/mesh/ui/DeviceSettingsFragment.kt +++ b/app/src/main/java/com/geeksville/mesh/ui/DeviceSettingsFragment.kt @@ -246,13 +246,12 @@ fun RadioConfigNavHost(node: NodeInfo, viewModel: UIViewModel = viewModel()) { } composable("position") { PositionConfigItemList( - locationInfo = location, + location = location, positionConfig = radioConfig.position, enabled = connected, focusManager = focusManager, - onSaveClicked = { positionPair -> + onSaveClicked = { locationInput, positionInput -> focusManager.clearFocus() - val (locationInput, positionInput) = positionPair if (locationInput != node.position && positionInput.fixedPosition) { locationInput?.let { viewModel.requestPosition(destNum, it) } location = locationInput @@ -362,9 +361,8 @@ fun RadioConfigNavHost(node: NodeInfo, viewModel: UIViewModel = viewModel()) { extNotificationConfig = moduleConfig.externalNotification, enabled = connected, focusManager = focusManager, - onSaveClicked = { extNotificationPair -> + onSaveClicked = { ringtoneInput, extNotificationInput -> focusManager.clearFocus() - val (ringtoneInput, extNotificationInput) = extNotificationPair if (ringtoneInput != ringtone) { viewModel.setRingtone(destNum, ringtoneInput) ringtone = ringtoneInput @@ -422,9 +420,8 @@ fun RadioConfigNavHost(node: NodeInfo, viewModel: UIViewModel = viewModel()) { cannedMessageConfig = moduleConfig.cannedMessage, enabled = connected, focusManager = focusManager, - onSaveClicked = { cannedMessagePair -> + onSaveClicked = { messagesInput, cannedMessageInput -> focusManager.clearFocus() - val (messagesInput, cannedMessageInput) = cannedMessagePair if (messagesInput != cannedMessageMessages) { viewModel.setCannedMessages(destNum, messagesInput) cannedMessageMessages = messagesInput diff --git a/app/src/main/java/com/geeksville/mesh/ui/components/config/CannedMessageConfigItemList.kt b/app/src/main/java/com/geeksville/mesh/ui/components/config/CannedMessageConfigItemList.kt index b90a6c0a3..a0ec78045 100644 --- a/app/src/main/java/com/geeksville/mesh/ui/components/config/CannedMessageConfigItemList.kt +++ b/app/src/main/java/com/geeksville/mesh/ui/components/config/CannedMessageConfigItemList.kt @@ -30,10 +30,10 @@ fun CannedMessageConfigItemList( cannedMessageConfig: CannedMessageConfig, enabled: Boolean, focusManager: FocusManager, - onSaveClicked: (Pair) -> Unit, + onSaveClicked: (messages: String, config: CannedMessageConfig) -> Unit, ) { - var messagesInput by remember(messages) { mutableStateOf(messages) } - var cannedMessageInput by remember(cannedMessageConfig) { mutableStateOf(cannedMessageConfig) } + var messagesInput by remember { mutableStateOf(messages) } + var cannedMessageInput by remember { mutableStateOf(cannedMessageConfig) } LazyColumn( modifier = Modifier.fillMaxSize() @@ -186,7 +186,7 @@ fun CannedMessageConfigItemList( messagesInput = messages cannedMessageInput = cannedMessageConfig }, - onSaveClicked = { onSaveClicked(Pair(messagesInput,cannedMessageInput)) } + onSaveClicked = { onSaveClicked(messagesInput,cannedMessageInput) } ) } } @@ -200,6 +200,6 @@ fun CannedMessageConfigPreview(){ cannedMessageConfig = CannedMessageConfig.getDefaultInstance(), enabled = true, focusManager = LocalFocusManager.current, - onSaveClicked = { }, + onSaveClicked = { _, _ -> }, ) } diff --git a/app/src/main/java/com/geeksville/mesh/ui/components/config/ExternalNotificationConfigItemList.kt b/app/src/main/java/com/geeksville/mesh/ui/components/config/ExternalNotificationConfigItemList.kt index a8cc5b2cc..6728d4a67 100644 --- a/app/src/main/java/com/geeksville/mesh/ui/components/config/ExternalNotificationConfigItemList.kt +++ b/app/src/main/java/com/geeksville/mesh/ui/components/config/ExternalNotificationConfigItemList.kt @@ -30,12 +30,10 @@ fun ExternalNotificationConfigItemList( extNotificationConfig: ExternalNotificationConfig, enabled: Boolean, focusManager: FocusManager, - onSaveClicked: (Pair) -> Unit, + onSaveClicked: (ringtone: String, config: ExternalNotificationConfig) -> Unit, ) { - var ringtoneInput by remember(ringtone) { mutableStateOf(ringtone) } - var externalNotificationInput by remember(extNotificationConfig) { - mutableStateOf(extNotificationConfig) - } + var ringtoneInput by remember { mutableStateOf(ringtone) } + var externalNotificationInput by remember { mutableStateOf(extNotificationConfig) } LazyColumn( modifier = Modifier.fillMaxSize() @@ -210,7 +208,7 @@ fun ExternalNotificationConfigItemList( ringtoneInput = ringtone externalNotificationInput = extNotificationConfig }, - onSaveClicked = { onSaveClicked(Pair(ringtoneInput, externalNotificationInput)) } + onSaveClicked = { onSaveClicked(ringtoneInput, externalNotificationInput) } ) } } @@ -224,6 +222,6 @@ fun ExternalNotificationConfigPreview(){ extNotificationConfig = ExternalNotificationConfig.getDefaultInstance(), enabled = true, focusManager = LocalFocusManager.current, - onSaveClicked = { }, + onSaveClicked = { _, _ -> }, ) } diff --git a/app/src/main/java/com/geeksville/mesh/ui/components/config/PositionConfigItemList.kt b/app/src/main/java/com/geeksville/mesh/ui/components/config/PositionConfigItemList.kt index 79f59d9c3..6e9d4a9fa 100644 --- a/app/src/main/java/com/geeksville/mesh/ui/components/config/PositionConfigItemList.kt +++ b/app/src/main/java/com/geeksville/mesh/ui/components/config/PositionConfigItemList.kt @@ -25,14 +25,14 @@ import com.geeksville.mesh.ui.components.SwitchPreference @Composable fun PositionConfigItemList( - locationInfo: Position?, + location: Position?, positionConfig: PositionConfig, enabled: Boolean, focusManager: FocusManager, - onSaveClicked: (Pair) -> Unit, + onSaveClicked: (position: Position?, config: PositionConfig) -> Unit, ) { - var locationInput by remember(locationInfo) { mutableStateOf(locationInfo) } - var positionInput by remember(positionConfig) { mutableStateOf(positionConfig) } + var locationInput by remember { mutableStateOf(location) } + var positionInput by remember { mutableStateOf(positionConfig) } LazyColumn( modifier = Modifier.fillMaxSize() @@ -175,13 +175,13 @@ fun PositionConfigItemList( item { PreferenceFooter( - enabled = positionInput != positionConfig || locationInput != locationInfo, + enabled = positionInput != positionConfig || locationInput != location, onCancelClicked = { focusManager.clearFocus() - locationInput = locationInfo + locationInput = location positionInput = positionConfig }, - onSaveClicked = { onSaveClicked(Pair(locationInput, positionInput)) } + onSaveClicked = { onSaveClicked(locationInput, positionInput) } ) } } @@ -191,10 +191,10 @@ fun PositionConfigItemList( @Composable fun PositionConfigPreview(){ PositionConfigItemList( - locationInfo = null, + location = null, positionConfig = PositionConfig.getDefaultInstance(), enabled = true, focusManager = LocalFocusManager.current, - onSaveClicked = { }, + onSaveClicked = { _, _ -> }, ) }