diff --git a/data/resources/src/commonMain/composeResources/values/strings.xml b/data/resources/src/commonMain/composeResources/values/strings.xml index cc1df06..ccf7ab6 100644 --- a/data/resources/src/commonMain/composeResources/values/strings.xml +++ b/data/resources/src/commonMain/composeResources/values/strings.xml @@ -52,6 +52,8 @@ revenir à la liste des contenus Phrase précédente Phrase suivante + passer à la phrase précédente + passer à la phrase suivante Lire Pause Rejouer diff --git a/feature/records/src/commonMain/kotlin/bzh/ajaury/chombev/player/ui/components/NextButton.kt b/feature/records/src/commonMain/kotlin/bzh/ajaury/chombev/player/ui/components/NextButton.kt index 8da8681..84d988c 100644 --- a/feature/records/src/commonMain/kotlin/bzh/ajaury/chombev/player/ui/components/NextButton.kt +++ b/feature/records/src/commonMain/kotlin/bzh/ajaury/chombev/player/ui/components/NextButton.kt @@ -8,10 +8,13 @@ import androidx.compose.material3.IconButton import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier +import androidx.compose.ui.semantics.onClick +import androidx.compose.ui.semantics.semantics import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import bzh.ajaury.chombev.resources.generated.resources.Res import bzh.ajaury.chombev.resources.generated.resources.player_next_sentence +import bzh.ajaury.chombev.resources.generated.resources.player_next_sentence_action_label import org.jetbrains.compose.resources.stringResource @Composable @@ -20,8 +23,18 @@ fun NextButton( modifier: Modifier = Modifier, onNextSentenceClicked: () -> Unit = {}, ) { + val actionLabel = stringResource(Res.string.player_next_sentence_action_label) IconButton( - modifier = modifier.size(60.dp), + modifier = modifier + .size(60.dp) + .semantics { + if (canGoToNextSentence) { + onClick(label = actionLabel) { + onNextSentenceClicked() + true + } + } + }, enabled = canGoToNextSentence, onClick = onNextSentenceClicked, ) { diff --git a/feature/records/src/commonMain/kotlin/bzh/ajaury/chombev/player/ui/components/PreviousButton.kt b/feature/records/src/commonMain/kotlin/bzh/ajaury/chombev/player/ui/components/PreviousButton.kt index bf54d90..f46ce11 100644 --- a/feature/records/src/commonMain/kotlin/bzh/ajaury/chombev/player/ui/components/PreviousButton.kt +++ b/feature/records/src/commonMain/kotlin/bzh/ajaury/chombev/player/ui/components/PreviousButton.kt @@ -8,10 +8,13 @@ import androidx.compose.material3.IconButton import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier +import androidx.compose.ui.semantics.onClick +import androidx.compose.ui.semantics.semantics import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import bzh.ajaury.chombev.resources.generated.resources.Res import bzh.ajaury.chombev.resources.generated.resources.player_previous_sentence +import bzh.ajaury.chombev.resources.generated.resources.player_previous_sentence_action_label import org.jetbrains.compose.resources.stringResource @Composable @@ -20,8 +23,18 @@ fun PreviousButton( modifier: Modifier = Modifier, onPreviousSentenceClicked: () -> Unit = {}, ) { + val actionLabel = stringResource(Res.string.player_previous_sentence_action_label) IconButton( - modifier = modifier.size(60.dp), + modifier = modifier + .size(60.dp) + .semantics { + if (canGoToPreviousSentence) { + onClick(label = actionLabel) { + onPreviousSentenceClicked() + true + } + } + }, enabled = canGoToPreviousSentence, onClick = onPreviousSentenceClicked, ) {