👉 В
BasicTextField можно теперь программно применять SpanStyle и ParagraphStyle через edit { addStyle(...) }:state.edit {
addStyle(SpanStyle(fontWeight = FontWeight.Bold), start = 0, end = 9)
}Стили сохраняются при смене конфигурации.
👉 Программное управление выделением. Новый
SelectionState с методами selectAll(), clear(), select(range) и extendSelectionByWord()val selectionState = rememberSelectionState()
val characterCount = selectionState.selectedTexts.sumOf { it.text.length }
Column {
SelectionContainer(state = selectionState) {
Column { BasicText(text = "Text to be selected...") }
}
if (characterCount > 0) {
BasicText(text = "Characters selected: $characterCount")
}
}
👉 Текстовые поля теперь нативно поддерживают Android Credential Manager (API 34+) через семантическое свойство
credentialRequest. Passkeys, сохранённые учётные данные — прямо из поля ввода.👉 Новые
KeyboardType: Date, Time, DateTime, SignedDecimal.👉
BasicSecureTextField теперь по умолчанию использует TextObfuscationMode.System#Compose