Skip to content

Commit 8612da9

Browse files
authored
Merge pull request #3970 from element-hq/feature/fga/knock_reason_field_update
change : knock message supporting text display number of characters
2 parents 31678c9 + 1dfabe4 commit 8612da9

22 files changed

+69
-46
lines changed

features/joinroom/impl/src/main/kotlin/io/element/android/features/joinroom/impl/JoinRoomPresenter.kt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,6 @@ import kotlinx.coroutines.CoroutineScope
4848
import kotlinx.coroutines.launch
4949
import java.util.Optional
5050

51-
private const val MAX_KNOCK_MESSAGE_LENGTH = 500
52-
5351
class JoinRoomPresenter @AssistedInject constructor(
5452
@Assisted private val roomId: RoomId,
5553
@Assisted private val roomIdOrAlias: RoomIdOrAlias,

features/joinroom/impl/src/main/kotlin/io/element/android/features/joinroom/impl/JoinRoomState.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ import io.element.android.libraries.matrix.api.core.RoomIdOrAlias
1818
import io.element.android.libraries.matrix.api.room.RoomType
1919
import io.element.android.libraries.matrix.ui.model.InviteSender
2020

21+
internal const val MAX_KNOCK_MESSAGE_LENGTH = 500
22+
2123
@Immutable
2224
data class JoinRoomState(
2325
val contentState: ContentState,

features/joinroom/impl/src/main/kotlin/io/element/android/features/joinroom/impl/JoinRoomStateProvider.kt

Lines changed: 23 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -40,17 +40,6 @@ open class JoinRoomStateProvider : PreviewParameterProvider<JoinRoomState> {
4040
aJoinRoomState(
4141
contentState = aLoadedContentState(joinAuthorisationStatus = JoinAuthorisationStatus.CanJoin)
4242
),
43-
aJoinRoomState(
44-
contentState = aLoadedContentState(
45-
joinAuthorisationStatus = JoinAuthorisationStatus.CanKnock,
46-
topic = "lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt" +
47-
" ut labore et dolore magna aliqua ut enim ad minim veniam quis nostrud exercitation ullamco" +
48-
" laboris nisi ut aliquip ex ea commodo consequat duis aute irure dolor in reprehenderit in" +
49-
" voluptate velit esse cillum dolore eu fugiat nulla pariatur excepteur sint occaecat cupidatat" +
50-
" non proident sunt in culpa qui officia deserunt mollit anim id est laborum",
51-
numberOfMembers = 888,
52-
)
53-
),
5443
aJoinRoomState(
5544
contentState = aLoadedContentState(joinAuthorisationStatus = JoinAuthorisationStatus.IsInvited(null))
5645
),
@@ -81,6 +70,29 @@ open class JoinRoomStateProvider : PreviewParameterProvider<JoinRoomState> {
8170
isDm = true,
8271
)
8372
),
73+
aJoinRoomState(
74+
contentState = aLoadedContentState(
75+
joinAuthorisationStatus = JoinAuthorisationStatus.CanKnock,
76+
topic = "lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt" +
77+
" ut labore et dolore magna aliqua ut enim ad minim veniam quis nostrud exercitation ullamco" +
78+
" laboris nisi ut aliquip ex ea commodo consequat duis aute irure dolor in reprehenderit in" +
79+
" voluptate velit esse cillum dolore eu fugiat nulla pariatur excepteur sint occaecat cupidatat" +
80+
" non proident sunt in culpa qui officia deserunt mollit anim id est laborum",
81+
numberOfMembers = 888,
82+
)
83+
),
84+
aJoinRoomState(
85+
knockMessage = "Let me in please!",
86+
contentState = aLoadedContentState(
87+
joinAuthorisationStatus = JoinAuthorisationStatus.CanKnock,
88+
topic = "lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt" +
89+
" ut labore et dolore magna aliqua ut enim ad minim veniam quis nostrud exercitation ullamco" +
90+
" laboris nisi ut aliquip ex ea commodo consequat duis aute irure dolor in reprehenderit in" +
91+
" voluptate velit esse cillum dolore eu fugiat nulla pariatur excepteur sint occaecat cupidatat" +
92+
" non proident sunt in culpa qui officia deserunt mollit anim id est laborum",
93+
numberOfMembers = 888,
94+
)
95+
),
8496
aJoinRoomState(
8597
contentState = aLoadedContentState(
8698
name = "A knocked Room",

features/joinroom/impl/src/main/kotlin/io/element/android/features/joinroom/impl/JoinRoomView.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -390,13 +390,18 @@ private fun DefaultLoadedContent(
390390
)
391391
} else if (contentState.joinAuthorisationStatus is JoinAuthorisationStatus.CanKnock) {
392392
Spacer(modifier = Modifier.height(24.dp))
393+
val supportingText = if (knockMessage.isNotEmpty()) {
394+
"${knockMessage.length}/$MAX_KNOCK_MESSAGE_LENGTH"
395+
} else {
396+
stringResource(R.string.screen_join_room_knock_message_description)
397+
}
393398
TextField(
394399
value = knockMessage,
395400
onValueChange = onKnockMessageUpdate,
396401
maxLines = 3,
397402
minLines = 3,
398403
modifier = Modifier.fillMaxWidth(),
399-
supportingText = stringResource(R.string.screen_join_room_knock_message_description)
404+
supportingText = supportingText
400405
)
401406
}
402407
}
Lines changed: 2 additions & 2 deletions
Loading
Lines changed: 2 additions & 2 deletions
Loading
Lines changed: 3 additions & 0 deletions
Loading
Lines changed: 2 additions & 2 deletions
Loading
Lines changed: 2 additions & 2 deletions
Loading
Lines changed: 2 additions & 2 deletions
Loading

0 commit comments

Comments
 (0)