Start native apps faster with the Composables CLI ->
Compose Component

OneHandedGestureIndicator

A wrapper that replaces the content to indicate to the user that a gesture action is available.

OneHandedGestureButtonSample

@Composable
fun OneHandedGestureButtonSample() {
    var label by remember { mutableStateOf("Gesturable Button") }
    val onClick = { label = "Clicked/Gestured" }
    val interactionSource = remember { MutableInteractionSource() }
    val gestureConfig = rememberOneHandedGestureConfiguration(action = GestureAction.Primary)
    val indicatorState = remember { OneHandedGestureIndicatorState() }
    Box(modifier = Modifier.fillMaxSize(), contentAlignment = Alignment.Center) {
        Button(
            onClick = onClick,
            interactionSource = interactionSource,
            modifier =
                Modifier.oneHandedGesture(
                    gestureConfiguration = gestureConfig,
                    interactionSource = interactionSource,
                    onGestureLabel = "activate the button",
                    onGestureAvailable = { indicatorState.isIndicatorActive = true },
                    onGesture = onClick,
                ),
        ) {
            OneHandedGestureIndicator(gestureConfig, indicatorState) { Text(label) }
        }
    }
}

Last updated: