Skip to content

Commit 237f40d

Browse files
feat: Add accessibility support to the AuthenticationIdentityInputView - WPB-15221 (#2435)
Co-authored-by: El-Fitz <8971906+El-Fitz@users.noreply.github.com>
1 parent 0b9b184 commit 237f40d

31 files changed

+76
-68
lines changed

WireUI/Sources/WireAuthenticationUI/Resources/en.lproj/Localizable.strings

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,3 @@
2020
"authentication.identity.input.field.placeholder" = "Email or SSO code";
2121
"authentication.identity.input.field.title" = "Email or SSO code";
2222
"authentication.identity.input.submit" = "Next";
23-
"authentication.identity.input.terms" = "By pressing on “Next”, you accept Wire’s [Terms and Conditions](%@)";
24-

WireUI/Sources/WireAuthenticationUI/Views/AuthenticationIdentityInputView.swift

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,9 @@ package struct AuthenticationIdentityInputView: View {
2929

3030
@State private var identity: String = ""
3131
private let actionCallback: @Sendable (Action) -> Void
32-
private let termsURL: URL
3332

34-
package init(actionCallback: @escaping @Sendable (Action) -> Void, termsURL: URL) {
33+
package init(actionCallback: @escaping @Sendable (Action) -> Void) {
3534
self.actionCallback = actionCallback
36-
self.termsURL = termsURL
3735
}
3836

3937
package var body: some View {
@@ -47,15 +45,19 @@ package struct AuthenticationIdentityInputView: View {
4745
.frame(maxWidth: .infinity)
4846
}
4947
Text(L10n.Authentication.Identity.Input.body)
48+
.multilineTextAlignment(.leading)
5049
.wireTextStyle(.body1)
5150
.lineLimit(nil)
51+
.fixedSize(horizontal: false, vertical: true)
52+
.padding(.trailing)
5253
LabeledTextField(
5354
isMandatory: false,
5455
placeholder: L10n.Authentication.Identity.Input.Field.placeholder,
5556
title: L10n.Authentication.Identity.Input.Field.title,
5657
string: $identity
5758
)
5859
.lineLimit(nil)
60+
.fixedSize(horizontal: false, vertical: true)
5961
Button(action: {
6062
actionCallback(.submit(identity: identity))
6163
}, label: {
@@ -64,19 +66,14 @@ package struct AuthenticationIdentityInputView: View {
6466
})
6567
.wireButtonStyle(.primary)
6668
.disabled(identity.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty)
67-
Text(AttributedString.markdown(from: L10n.Authentication.Identity.Input.terms(termsURL.absoluteString)))
68-
.multilineTextAlignment(.center)
69-
.wireTextStyle(.subline1)
70-
.lineLimit(nil)
7169
}
7270
}
7371
}
7472

7573
struct AuthenticationIdentityInputPreview: View {
7674
var body: some View {
7775
AuthenticationIdentityInputView(
78-
actionCallback: { _ in },
79-
termsURL: URL(string: "https://example.com")!
76+
actionCallback: { _ in }
8077
)
8178
.environment(\.wireTextStyleMapping, WireTextStyleMapping())
8279
.padding(32)
@@ -104,3 +101,16 @@ struct AuthenticationIdentityInputPreview: View {
104101
}
105102
}
106103
}
104+
105+
#Preview("Large font") {
106+
BackgroundView()
107+
.overlay {
108+
VStack(spacing: 0) {
109+
Spacer()
110+
.frame(maxHeight: .infinity)
111+
AuthenticationIdentityInputPreview()
112+
.background()
113+
}
114+
}
115+
.environment(\.sizeCategory, .accessibilityExtraExtraExtraLarge)
116+
}

WireUI/Sources/WireReusableUIComponents/LabeledTextField/LabeledTextField.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ public struct LabeledTextField: View {
5353
) : Text(title)
5454
)
5555
.foregroundStyle(titleColor)
56-
.wireTextStyle(.subline1)
56+
.wireTextStyle(.h4)
5757
}
5858
HStack(spacing: 0) {
5959
TextField(placeholder ?? "", text: $string)
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading

0 commit comments

Comments
 (0)