1
0
mirror of https://github.com/vector-im/riotX-android synced 2025-10-06 00:02:48 +02:00

Merge pull request #6805 from vector-im/cgizard/ISSUE-6645

Add inputType for room name creation and settings
This commit is contained in:
Benoit Marty
2022-08-16 11:05:57 +02:00
committed by GitHub
4 changed files with 9 additions and 4 deletions

1
changelog.d/6645.misc Normal file
View File

@@ -0,0 +1 @@
Enable auto-capitalization for Room creation Title field

View File

@@ -58,6 +58,9 @@ abstract class FormEditTextItem : VectorEpoxyModel<FormEditTextItem.Holder>(R.la
@EpoxyAttribute
var singleLine: Boolean = true
@EpoxyAttribute
var autoCapitalize: Boolean = false
@EpoxyAttribute
var imeOptions: Int? = null
@@ -132,10 +135,9 @@ abstract class FormEditTextItem : VectorEpoxyModel<FormEditTextItem.Holder>(R.la
*/
private fun configureInputType(holder: Holder) {
val newInputType =
inputType ?: when (singleLine) {
true -> InputType.TYPE_CLASS_TEXT
false -> InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_MULTI_LINE
}
inputType ?: InputType.TYPE_CLASS_TEXT
.let { if (autoCapitalize) it or InputType.TYPE_TEXT_FLAG_CAP_SENTENCES else it }
.let { if (!singleLine) it or InputType.TYPE_TEXT_FLAG_MULTI_LINE else it }
// This is a must in order to avoid extreme lag in some devices, on fast typing
if (holder.textInputEditText.inputType != newInputType) {

View File

@@ -67,6 +67,7 @@ class CreateRoomController @Inject constructor(
enabled(enableFormElement)
value(viewState.roomName)
hint(host.stringProvider.getString(R.string.create_room_name_hint))
autoCapitalize(true)
onTextChange { text ->
host.listener?.onNameChange(text)

View File

@@ -91,6 +91,7 @@ class RoomSettingsController @Inject constructor(
enabled(data.actionPermissions.canChangeName)
value(data.newName ?: roomSummary.displayName)
hint(host.stringProvider.getString(R.string.room_settings_name_hint))
autoCapitalize(true)
onTextChange { text ->
host.callback?.onNameChanged(text)