kopia lustrzana https://github.com/meshtastic/Meshtastic-Android
Use LaunchedEffect to handle message input clearing
Track message sending with a flag and use LaunchedEffect to clear the text input in the next composition frame. This prevents race conditions between state changes and text clearing operations.pull/2229/head
rodzic
1d165a5dc3
commit
dd4c65665d
|
@ -150,6 +150,15 @@ internal fun MessageScreen(
|
|||
) {
|
||||
mutableStateOf(TextFieldValue(message))
|
||||
}
|
||||
|
||||
// Track when a message is sent to clear the input
|
||||
var messageSent by remember { mutableStateOf(false) }
|
||||
LaunchedEffect(messageSent) {
|
||||
if (messageSent) {
|
||||
messageInput.value = TextFieldValue("")
|
||||
messageSent = false
|
||||
}
|
||||
}
|
||||
var replyingTo by remember { mutableStateOf<Message?>(null) }
|
||||
|
||||
var showDeleteDialog by remember { mutableStateOf(false) }
|
||||
|
@ -267,8 +276,7 @@ internal fun MessageScreen(
|
|||
viewModel.sendMessage(message, contactKey, it.packetId)
|
||||
replyingTo = null
|
||||
} ?: viewModel.sendMessage(message, contactKey)
|
||||
// Clear the text input after sending the message and updating all state
|
||||
messageInput.value = TextFieldValue("")
|
||||
messageSent = true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Ładowanie…
Reference in New Issue