Skip to content

Commit 4584c2a

Browse files
committed
add a11y traits for buttons, headers, and images
1 parent 4ea394f commit 4584c2a

File tree

3 files changed

+16
-0
lines changed

3 files changed

+16
-0
lines changed

WooCommerce/Classes/POS/Presentation/Settings/PointOfSaleSettingsHardwareDetailView.swift

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,14 @@ struct PointOfSaleSettingsHardwareDetailView: View {
3535
NavigationStack(path: $navigationPath) {
3636
POSPageHeaderView(title: Localization.hardwareTitle)
3737
.foregroundColor(.posSurface)
38+
.accessibilityAddTraits(.isHeader)
3839

3940
List(HardwareDestination.allCases) { destination in
4041
NavigationLink(value: NavigationDestination.hardware(destination)) {
4142
DynamicHStack(horizontalAlignment: .leading, spacing: POSSpacing.medium) {
4243
Image(systemName: destination.icon)
4344
.font(.posBodyLargeRegular())
45+
.accessibilityHidden(true)
4446
.renderedIf(!dynamicTypeSize.isAccessibilitySize)
4547

4648
VStack(alignment: .leading, spacing: POSPadding.xSmall) {
@@ -119,6 +121,7 @@ struct PointOfSaleSettingsHardwareDetailView: View {
119121
DynamicHStack(horizontalAlignment: .leading, spacing: POSSpacing.medium) {
120122
Image(systemName: "doc.text")
121123
.font(.posBodyLargeRegular())
124+
.accessibilityHidden(true)
122125
.renderedIf(!dynamicTypeSize.isAccessibilitySize)
123126

124127
VStack(alignment: .leading, spacing: POSPadding.xSmall) {
@@ -134,6 +137,7 @@ struct PointOfSaleSettingsHardwareDetailView: View {
134137
}
135138
}
136139
.buttonStyle(.plain)
140+
.accessibilityAddTraits(.isButton)
137141
.listRowSeparator(.hidden)
138142
}
139143
.listStyle(.plain)
@@ -172,6 +176,7 @@ struct PointOfSaleSettingsHardwareDetailView: View {
172176
DynamicHStack(horizontalAlignment: .leading, spacing: POSSpacing.medium) {
173177
Image(systemName: destination.icon)
174178
.font(.posBodyLargeRegular())
179+
.accessibilityHidden(true)
175180
.renderedIf(!dynamicTypeSize.isAccessibilitySize)
176181

177182
VStack(alignment: .leading, spacing: POSPadding.xSmall) {
@@ -187,6 +192,7 @@ struct PointOfSaleSettingsHardwareDetailView: View {
187192
}
188193
}
189194
.buttonStyle(.plain)
195+
.accessibilityAddTraits(.isButton)
190196
.listRowSeparator(.hidden)
191197
}
192198
.listStyle(.plain)

WooCommerce/Classes/POS/Presentation/Settings/PointOfSaleSettingsHelpDetailView.swift

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,15 @@ struct PointOfSaleSettingsHelpDetailView: View {
1515
NavigationStack {
1616
POSPageHeaderView(title: Localization.helpTitle)
1717
.foregroundColor(.posSurface)
18+
.accessibilityAddTraits(.isHeader)
1819
List {
1920
Button {
2021
showProductRestrictions = true
2122
} label: {
2223
DynamicHStack(horizontalAlignment: .leading, spacing: POSSpacing.medium) {
2324
Image(systemName: "magnifyingglass")
2425
.font(.posBodyLargeRegular())
26+
.accessibilityHidden(true)
2527
.renderedIf(!dynamicTypeSize.isAccessibilitySize)
2628
VStack(alignment: .leading, spacing: POSPadding.xSmall) {
2729
Text(Localization.productRestrictionsInfo)
@@ -35,6 +37,7 @@ struct PointOfSaleSettingsHelpDetailView: View {
3537
Spacer()
3638
}
3739
}
40+
.accessibilityAddTraits(.isButton)
3841
.listRowSeparator(.hidden)
3942
.buttonStyle(.plain)
4043

@@ -44,6 +47,7 @@ struct PointOfSaleSettingsHelpDetailView: View {
4447
DynamicHStack(horizontalAlignment: .leading, spacing: POSSpacing.medium) {
4548
Image(systemName: "doc.text")
4649
.font(.posBodyLargeRegular())
50+
.accessibilityHidden(true)
4751
.renderedIf(!dynamicTypeSize.isAccessibilitySize)
4852
VStack(alignment: .leading, spacing: POSPadding.xSmall) {
4953
Text(Localization.documentationTitle)
@@ -57,6 +61,7 @@ struct PointOfSaleSettingsHelpDetailView: View {
5761
Spacer()
5862
}
5963
}
64+
.accessibilityAddTraits(.isButton)
6065
.listRowSeparator(.hidden)
6166
.buttonStyle(.plain)
6267

@@ -66,6 +71,7 @@ struct PointOfSaleSettingsHelpDetailView: View {
6671
DynamicHStack(horizontalAlignment: .leading, spacing: POSSpacing.medium) {
6772
Image(systemName: "questionmark")
6873
.font(.posBodyLargeRegular())
74+
.accessibilityHidden(true)
6975
.renderedIf(!dynamicTypeSize.isAccessibilitySize)
7076
VStack(alignment: .leading, spacing: POSPadding.xSmall) {
7177
Text(Localization.getSupportTitle)
@@ -79,6 +85,7 @@ struct PointOfSaleSettingsHelpDetailView: View {
7985
Spacer()
8086
}
8187
}
88+
.accessibilityAddTraits(.isButton)
8289
.listRowSeparator(.hidden)
8390
.buttonStyle(.plain)
8491
}

WooCommerce/Classes/POS/Presentation/Settings/PointOfSaleSettingsView.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ extension PointOfSaleSettingsView {
3232
},
3333
buttonIcon: "xmark"))
3434
.foregroundColor(.posSurface)
35+
.accessibilityAddTraits(.isHeader)
3536

3637
VStack(spacing: POSSpacing.small) {
3738
PointOfSaleSettingsCard(
@@ -102,6 +103,7 @@ struct PointOfSaleSettingsCard: View {
102103
Image(systemName: item.icon)
103104
.font(.posBodyLargeRegular())
104105
.foregroundStyle(Color.posOnSurface)
106+
.accessibilityHidden(true)
105107
.renderedIf(!dynamicTypeSize.isAccessibilitySize)
106108

107109
VStack(alignment: .leading, spacing: POSSpacing.xSmall) {
@@ -121,6 +123,7 @@ struct PointOfSaleSettingsCard: View {
121123
.contentShape(Rectangle())
122124
}
123125
.buttonStyle(.plain)
126+
.accessibilityAddTraits(.isButton)
124127
.background(
125128
RoundedRectangle(cornerRadius: POSCornerRadiusStyle.small.value, style: .continuous)
126129
.fill(isSelected ? Color.posSecondary : Color.clear)

0 commit comments

Comments
 (0)