Skip to content

Commit 52a6b78

Browse files
authored
Merge pull request #4980 from element-hq/feature/bma/clickLabel
[a11y] add missing heading() qualifier on screen titles and other headers
2 parents 635711e + 8910487 commit 52a6b78

File tree

83 files changed

+344
-376
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

83 files changed

+344
-376
lines changed

features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/addpeople/AddPeopleView.kt

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,14 @@ import androidx.compose.runtime.Composable
1515
import androidx.compose.ui.Modifier
1616
import androidx.compose.ui.res.stringResource
1717
import androidx.compose.ui.tooling.preview.PreviewParameter
18-
import io.element.android.compound.theme.ElementTheme
1918
import io.element.android.features.createroom.impl.R
2019
import io.element.android.features.createroom.impl.components.UserListView
2120
import io.element.android.features.createroom.impl.userlist.UserListEvents
2221
import io.element.android.features.createroom.impl.userlist.UserListState
2322
import io.element.android.libraries.designsystem.components.button.BackButton
2423
import io.element.android.libraries.designsystem.preview.ElementPreview
2524
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
26-
import io.element.android.libraries.designsystem.theme.aliasScreenTitle
2725
import io.element.android.libraries.designsystem.theme.components.Scaffold
28-
import io.element.android.libraries.designsystem.theme.components.Text
2926
import io.element.android.libraries.designsystem.theme.components.TextButton
3027
import io.element.android.libraries.designsystem.theme.components.TopAppBar
3128
import io.element.android.libraries.ui.strings.CommonStrings
@@ -74,12 +71,7 @@ private fun AddPeopleViewTopBar(
7471
onNextClick: () -> Unit,
7572
) {
7673
TopAppBar(
77-
title = {
78-
Text(
79-
text = stringResource(id = R.string.screen_create_room_add_people_title),
80-
style = ElementTheme.typography.aliasScreenTitle
81-
)
82-
},
74+
titleStr = stringResource(id = R.string.screen_create_room_add_people_title),
8375
navigationIcon = { BackButton(onClick = onBackClick) },
8476
actions = {
8577
val textActionResId = if (hasSelectedUsers) CommonStrings.action_next else CommonStrings.action_skip

features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/configureroom/ConfigureRoomView.kt

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ import io.element.android.libraries.designsystem.modifiers.clearFocusOnTap
4848
import io.element.android.libraries.designsystem.preview.ElementPreviewDark
4949
import io.element.android.libraries.designsystem.preview.ElementPreviewLight
5050
import io.element.android.libraries.designsystem.preview.PreviewWithLargeHeight
51-
import io.element.android.libraries.designsystem.theme.aliasScreenTitle
5251
import io.element.android.libraries.designsystem.theme.components.ListItem
5352
import io.element.android.libraries.designsystem.theme.components.Scaffold
5453
import io.element.android.libraries.designsystem.theme.components.Text
@@ -189,12 +188,7 @@ private fun ConfigureRoomToolbar(
189188
onNextClick: () -> Unit,
190189
) {
191190
TopAppBar(
192-
title = {
193-
Text(
194-
text = stringResource(R.string.screen_create_room_title),
195-
style = ElementTheme.typography.aliasScreenTitle,
196-
)
197-
},
191+
titleStr = stringResource(R.string.screen_create_room_title),
198192
navigationIcon = { BackButton(onClick = onBackClick) },
199193
actions = {
200194
TextButton(

features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/root/CreateRoomRootView.kt

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ import io.element.android.libraries.designsystem.components.button.BackButton
3636
import io.element.android.libraries.designsystem.icons.CompoundDrawables
3737
import io.element.android.libraries.designsystem.preview.ElementPreview
3838
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
39-
import io.element.android.libraries.designsystem.theme.aliasScreenTitle
4039
import io.element.android.libraries.designsystem.theme.components.Icon
4140
import io.element.android.libraries.designsystem.theme.components.ListSectionHeader
4241
import io.element.android.libraries.designsystem.theme.components.Scaffold
@@ -137,12 +136,7 @@ private fun CreateRoomRootViewTopBar(
137136
onCloseClick: () -> Unit,
138137
) {
139138
TopAppBar(
140-
title = {
141-
Text(
142-
text = stringResource(id = CommonStrings.action_start_chat),
143-
style = ElementTheme.typography.aliasScreenTitle,
144-
)
145-
},
139+
titleStr = stringResource(id = CommonStrings.action_start_chat),
146140
navigationIcon = {
147141
BackButton(
148142
imageVector = CompoundIcons.Close(),

features/deactivation/impl/src/main/kotlin/io/element/android/features/logout/impl/AccountDeactivationView.kt

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,6 @@ import io.element.android.libraries.designsystem.modifiers.onTabOrEnterKeyFocusN
5757
import io.element.android.libraries.designsystem.preview.ElementPreview
5858
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
5959
import io.element.android.libraries.designsystem.text.buildAnnotatedStringWithStyledPart
60-
import io.element.android.libraries.designsystem.theme.aliasScreenTitle
6160
import io.element.android.libraries.designsystem.theme.components.Button
6261
import io.element.android.libraries.designsystem.theme.components.Icon
6362
import io.element.android.libraries.designsystem.theme.components.Scaffold
@@ -85,12 +84,7 @@ fun AccountDeactivationView(
8584
navigationIcon = {
8685
BackButton(onClick = onBackClick)
8786
},
88-
title = {
89-
Text(
90-
text = stringResource(R.string.screen_deactivate_account_title),
91-
style = ElementTheme.typography.aliasScreenTitle,
92-
)
93-
},
87+
titleStr = stringResource(R.string.screen_deactivate_account_title),
9488
)
9589
},
9690
) { padding ->

features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/RoomListTopBar.kt

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ import androidx.compose.ui.layout.onSizeChanged
3434
import androidx.compose.ui.platform.LocalDensity
3535
import androidx.compose.ui.platform.LocalInspectionMode
3636
import androidx.compose.ui.res.stringResource
37+
import androidx.compose.ui.semantics.heading
38+
import androidx.compose.ui.semantics.semantics
3739
import androidx.compose.ui.unit.DpOffset
3840
import androidx.compose.ui.unit.DpSize
3941
import androidx.compose.ui.unit.dp
@@ -197,7 +199,12 @@ private fun DefaultRoomListTopBar(
197199
scrolledContainerColor = Color.Transparent,
198200
),
199201
title = {
200-
Text(text = title)
202+
Text(
203+
modifier = Modifier.semantics {
204+
heading()
205+
},
206+
text = title,
207+
)
201208
},
202209
navigationIcon = {
203210
NavigationIcon(

features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/RoomSummaryRow.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,7 @@ private fun RoomSummaryScaffoldRow(
173173
val clickModifier = Modifier.combinedClickable(
174174
onClick = { onClick(room) },
175175
onLongClick = { onLongClick(room) },
176+
onLongClickLabel = stringResource(CommonStrings.action_open_context_menu),
176177
indication = ripple(),
177178
interactionSource = remember { MutableInteractionSource() }
178179
)

features/invite/impl/src/main/kotlin/io/element/android/features/invite/impl/declineandblock/DeclineAndBlockView.kt

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,13 @@ import androidx.compose.ui.platform.LocalFocusManager
2525
import androidx.compose.ui.res.stringResource
2626
import androidx.compose.ui.tooling.preview.PreviewParameter
2727
import androidx.compose.ui.unit.dp
28-
import io.element.android.compound.theme.ElementTheme
2928
import io.element.android.features.invite.impl.R
3029
import io.element.android.libraries.architecture.AsyncAction
3130
import io.element.android.libraries.designsystem.components.async.AsyncActionView
3231
import io.element.android.libraries.designsystem.components.button.BackButton
3332
import io.element.android.libraries.designsystem.components.list.ListItemContent
3433
import io.element.android.libraries.designsystem.preview.ElementPreview
3534
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
36-
import io.element.android.libraries.designsystem.theme.aliasScreenTitle
3735
import io.element.android.libraries.designsystem.theme.components.Button
3836
import io.element.android.libraries.designsystem.theme.components.ListItem
3937
import io.element.android.libraries.designsystem.theme.components.Scaffold
@@ -63,12 +61,7 @@ fun DeclineAndBlockView(
6361
Scaffold(
6462
topBar = {
6563
TopAppBar(
66-
title = {
67-
Text(
68-
stringResource(R.string.screen_decline_and_block_title),
69-
style = ElementTheme.typography.aliasScreenTitle,
70-
)
71-
},
64+
titleStr = stringResource(R.string.screen_decline_and_block_title),
7265
navigationIcon = {
7366
BackButton(onClick = onBackClick)
7467
}

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

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ import androidx.compose.ui.Modifier
3131
import androidx.compose.ui.draw.clip
3232
import androidx.compose.ui.graphics.Color
3333
import androidx.compose.ui.res.stringResource
34+
import androidx.compose.ui.semantics.heading
35+
import androidx.compose.ui.semantics.semantics
3436
import androidx.compose.ui.text.font.FontStyle
3537
import androidx.compose.ui.text.style.TextOverflow
3638
import androidx.compose.ui.tooling.preview.PreviewParameter
@@ -577,7 +579,11 @@ private fun JoinRoomTopBar(
577579
avatarType = AvatarType.Room(),
578580
)
579581
Text(
580-
modifier = Modifier.padding(horizontal = 8.dp),
582+
modifier = Modifier
583+
.padding(horizontal = 8.dp)
584+
.semantics {
585+
heading()
586+
},
581587
text = contentState.name,
582588
style = ElementTheme.typography.fontBodyLgMedium,
583589
maxLines = 1,

features/knockrequests/impl/src/main/kotlin/io/element/android/features/knockrequests/impl/list/KnockRequestsListView.kt

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,6 @@ import io.element.android.libraries.designsystem.components.dialogs.Confirmation
6262
import io.element.android.libraries.designsystem.preview.ElementPreview
6363
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
6464
import io.element.android.libraries.designsystem.text.toDp
65-
import io.element.android.libraries.designsystem.theme.aliasScreenTitle
6665
import io.element.android.libraries.designsystem.theme.components.Button
6766
import io.element.android.libraries.designsystem.theme.components.ButtonSize
6867
import io.element.android.libraries.designsystem.theme.components.CircularProgressIndicator
@@ -479,12 +478,7 @@ private fun KnockRequestsEmptyList(
479478
@Composable
480479
private fun KnockRequestsListTopBar(onBackClick: () -> Unit) {
481480
TopAppBar(
482-
title = {
483-
Text(
484-
text = stringResource(R.string.screen_knock_requests_list_title),
485-
style = ElementTheme.typography.aliasScreenTitle,
486-
)
487-
},
481+
titleStr = stringResource(R.string.screen_knock_requests_list_title),
488482
navigationIcon = { BackButton(onClick = onBackClick) },
489483
)
490484
}

features/licenses/impl/src/main/kotlin/io/element/android/features/licenses/impl/details/DependenciesDetailsView.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ import io.element.android.libraries.designsystem.preview.ElementPreview
2323
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
2424
import io.element.android.libraries.designsystem.theme.components.ListItem
2525
import io.element.android.libraries.designsystem.theme.components.Scaffold
26-
import io.element.android.libraries.designsystem.theme.components.Text
2726
import io.element.android.libraries.designsystem.theme.components.TopAppBar
2827

2928
@OptIn(ExperimentalMaterial3Api::class)
@@ -37,7 +36,7 @@ fun DependenciesDetailsView(
3736
modifier = modifier,
3837
topBar = {
3938
TopAppBar(
40-
title = { Text(text = licenseItem.safeName) },
39+
titleStr = licenseItem.safeName,
4140
navigationIcon = { BackButton(onClick = onBack) },
4241
)
4342
},

0 commit comments

Comments
 (0)