Add contentDescriptions to radio buttons

pull/1313/head
andrew 2 years ago
parent 864942026c
commit b2f92bc166

@ -40,7 +40,10 @@ import androidx.compose.ui.graphics.Brush
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.RectangleShape import androidx.compose.ui.graphics.RectangleShape
import androidx.compose.ui.graphics.graphicsLayer import androidx.compose.ui.graphics.graphicsLayer
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.painterResource
import androidx.compose.ui.semantics.contentDescription
import androidx.compose.ui.semantics.semantics
import androidx.compose.ui.unit.Dp import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp import androidx.compose.ui.unit.sp
@ -150,6 +153,7 @@ fun <T> TitledRadioButton(option: RadioOption<T>, onClick: () -> Unit) {
.clickable { if (!option.selected) onClick() } .clickable { if (!option.selected) onClick() }
.heightIn(min = 60.dp) .heightIn(min = 60.dp)
.padding(horizontal = 32.dp) .padding(horizontal = 32.dp)
.contentDescription(option.contentDescription)
) { ) {
Column(modifier = Modifier Column(modifier = Modifier
.weight(1f) .weight(1f)
@ -180,6 +184,12 @@ fun <T> TitledRadioButton(option: RadioOption<T>, onClick: () -> Unit) {
} }
} }
@Composable
fun Modifier.contentDescription(text: GetString): Modifier {
val context = LocalContext.current
return semantics { contentDescription = text(context) }
}
@Composable @Composable
fun OutlineButton(text: String, modifier: Modifier = Modifier, onClick: () -> Unit) { fun OutlineButton(text: String, modifier: Modifier = Modifier, onClick: () -> Unit) {
OutlinedButton( OutlinedButton(

@ -159,7 +159,7 @@
<string name="AccessibilityId_disappearing_messages_timer">Disappearing messages timer</string> <string name="AccessibilityId_disappearing_messages_timer">Disappearing messages timer</string>
<string name="AccessibilityId_set_button">Set button</string> <string name="AccessibilityId_set_button">Set button</string>
<string name="AccessibilityId_time_option">Time option</string> <string name="AccessibilityId_time_option">Time option</string>
<string name="AccessibilityId_disable_disappearing_messages">Disable disappearing messages (Off option)</string> <string name="AccessibilityId_disable_disappearing_messages">Disable disappearing messages</string>
<string name="AccessibilityId_configuration_message">Configuration message</string> <string name="AccessibilityId_configuration_message">Configuration message</string>
<string name="AccessibilityId_disappearing_messages_type_and_time">Disappearing messages type and time</string> <string name="AccessibilityId_disappearing_messages_type_and_time">Disappearing messages type and time</string>
<string name="AccessibilityId_conversation_header_name">Conversation header name</string> <string name="AccessibilityId_conversation_header_name">Conversation header name</string>

Loading…
Cancel
Save