Knock a room - added a char counter for the message (#3570)

* added a char counter

* moved code
This commit is contained in:
Mauro
2024-12-02 17:28:50 +01:00
committed by GitHub
parent 0045c94965
commit f53df97c9b
5 changed files with 19 additions and 11 deletions

View File

@@ -9,6 +9,7 @@ import Compound
import SwiftUI
struct JoinRoomScreen: View {
private let maxKnockMessageLength = 500
@Environment(\.dynamicTypeSize) private var dynamicTypeSize
@ObservedObject var context: JoinRoomScreenViewModel.Context
@@ -103,6 +104,13 @@ struct JoinRoomScreen: View {
}
}
}
private var knockMessageFooterString: String {
guard !context.knockMessage.isEmpty else {
return L10n.screenJoinRoomKnockMessageDescription
}
return "\(context.knockMessage.count)/\(maxKnockMessageLength)"
}
@ViewBuilder
private var knockMessage: some View {
@@ -110,7 +118,7 @@ struct JoinRoomScreen: View {
HStack(spacing: 0) {
TextField("", text: $context.knockMessage, axis: .vertical)
.onChange(of: context.knockMessage) { _, newValue in
context.knockMessage = String(newValue.prefix(500))
context.knockMessage = String(newValue.prefix(maxKnockMessageLength))
}
.lineLimit(4, reservesSpace: true)
.font(.compound.bodyMD)
@@ -125,8 +133,8 @@ struct JoinRoomScreen: View {
.stroke(.compound.borderInteractivePrimary)
}
Text(L10n.screenJoinRoomKnockMessageDescription)
.font(.compound.bodyMD)
Text(knockMessageFooterString)
.font(.compound.bodySM)
.foregroundStyle(.compound.textSecondary)
}
}

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2347df221ddac84740cf5436620bb07bf3e7f24aea85e6dceec11f8d374a66d0
size 1817511
oid sha256:659cf8286eb523208e2fca0ba19578ff4b33a0076dea962fc3f133a089f5bca9
size 1816652

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:69ad1bad58cd73c5626fdf52923f6a0955221f5673b4485c131048d64b215c84
size 1825976
oid sha256:563f7440384e75819f985d659108c5e37bd8c5bca2ca79fbdb2c1ee0617ed17d
size 1824851

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:438018482d1792510fd3d07df8f9ba72ca7ddf3f1e69d7ab0b0adcdbe7a8b0f8
size 729066
oid sha256:6f3d9a81bc16d26c4048e4bd59fefe56159a10f2a0f32139ee84ecef7f4d001f
size 728704

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:03f9fedddcc22df3d14c21cb5314cdd8fdf17592032f57bb762b7c1fe1bbf5ca
size 738216
oid sha256:6cbcee4066b91f8649d34a66b1b42dfd036541ed7eb7043bff6618089192ae1a
size 736832