Limit call link names to 32 characters.

This commit is contained in:
Alex Hart
2024-11-07 12:45:34 -04:00
parent 03b6b2d591
commit 73097f071d

View File

@@ -37,6 +37,7 @@ import androidx.fragment.app.setFragmentResult
import androidx.navigation.fragment.navArgs
import org.signal.core.ui.Buttons
import org.signal.core.ui.Scaffolds
import org.signal.core.util.BreakIteratorCompat
import org.thoughtcrime.securesms.R
import org.thoughtcrime.securesms.compose.ComposeDialogFragment
@@ -44,6 +45,8 @@ class EditCallLinkNameDialogFragment : ComposeDialogFragment() {
companion object {
const val RESULT_KEY = "edit_call_link_name"
private const val MAX_CHARACTER_COUNT = 32
}
private val args: EditCallLinkNameDialogFragmentArgs by navArgs()
@@ -79,6 +82,7 @@ class EditCallLinkNameDialogFragment : ComposeDialogFragment() {
navigationContentDescription = stringResource(id = R.string.Material3SearchToolbar__close)
) { paddingValues ->
val focusRequester = remember { FocusRequester() }
val breakIterator = remember { BreakIteratorCompat.getInstance() }
Surface(modifier = Modifier.padding(paddingValues)) {
Column(
@@ -93,7 +97,9 @@ class EditCallLinkNameDialogFragment : ComposeDialogFragment() {
label = {
Text(text = stringResource(id = R.string.EditCallLinkNameDialogFragment__call_name))
},
onValueChange = { callName = it },
onValueChange = {
callName = it.copy(text = breakIterator.apply { setText(it.text) }.take(32).toString())
},
singleLine = true,
modifier = Modifier
.fillMaxWidth()