From a1fc4487f3f64caace3885faadcd2539f1b1f071 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Fri, 11 Jul 2025 15:42:44 +0200 Subject: [PATCH] [a11y] Ensure that the loading state is read out. --- .../verifysession/impl/incoming/IncomingVerificationView.kt | 6 ++++++ .../verifysession/impl/outgoing/OutgoingVerificationView.kt | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationView.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationView.kt index 3ebd94c40d..4d51b0ca4f 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationView.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationView.kt @@ -20,8 +20,10 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.res.stringResource +import androidx.compose.ui.semantics.ProgressBarRangeInfo import androidx.compose.ui.semantics.contentDescription import androidx.compose.ui.semantics.focused +import androidx.compose.ui.semantics.progressBarRangeInfo import androidx.compose.ui.semantics.semantics import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.tooling.preview.PreviewParameter @@ -155,6 +157,10 @@ private fun IncomingVerificationHeader(step: Step, request: VerificationRequest. .semantics(mergeDescendants = true) { contentDescription = timeLimitMessage focused = true + if (iconStyle == BigIcon.Style.Loading) { + // Same code than Modifier.progressSemantics() + progressBarRangeInfo = ProgressBarRangeInfo.Indeterminate + } } .focusable(), iconStyle = iconStyle, diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationView.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationView.kt index 976c42a12b..f58a5ac76a 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationView.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationView.kt @@ -23,8 +23,10 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.res.stringResource +import androidx.compose.ui.semantics.ProgressBarRangeInfo import androidx.compose.ui.semantics.contentDescription import androidx.compose.ui.semantics.focused +import androidx.compose.ui.semantics.progressBarRangeInfo import androidx.compose.ui.semantics.semantics import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp @@ -195,6 +197,10 @@ private fun OutgoingVerificationHeader(step: Step, request: VerificationRequest. .semantics(mergeDescendants = true) { contentDescription = timeLimitMessage focused = true + if (iconStyle == BigIcon.Style.Loading) { + // Same code than Modifier.progressSemantics() + progressBarRangeInfo = ProgressBarRangeInfo.Indeterminate + } } .focusable(), iconStyle = iconStyle,