diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/CustomTextFieldRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/CustomTextFieldRenderer.kt index f21b7b1..d25592c 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/CustomTextFieldRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/CustomTextFieldRenderer.kt @@ -183,14 +183,19 @@ class CustomTextFieldRenderer( onDone = { keyboardController?.hide() } ), value = inputValue, - onValueChange = { - if (!it.isInvalidInput(property.invalidCharRegex)) { + onValueChange = { input -> + val updatedInput = if (property.singleLine.orFalse()) { + input.replace("\n"," ") + } else { + input + } + if (!updatedInput.isInvalidInput(property.invalidCharRegex)) { property.maxChar?.let { maxChar -> - if (maxChar >= it.length) { - inputValue = it + if (maxChar >= updatedInput.length) { + inputValue = updatedInput val transformedText = transformInput( property.valueTransformation, - it + updatedInput ) customTextFieldData?.inputText = transformedText uiTronViewModel.handle[property.layoutId.getInputId()] = @@ -200,10 +205,10 @@ class CustomTextFieldRenderer( } } } ?: run { - inputValue = it + inputValue = updatedInput val transformedText = transformInput( property.valueTransformation, - it + updatedInput ) customTextFieldData?.inputText = transformedText uiTronViewModel.handle[property.layoutId.getInputId()] =