diff --git a/app/src/main/java/org/thoughtcrime/securesms/calls/links/EditCallLinkNameDialogFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/calls/links/EditCallLinkNameDialogFragment.kt index b36300eec4..b74c4f602a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/calls/links/EditCallLinkNameDialogFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/calls/links/EditCallLinkNameDialogFragment.kt @@ -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()