---
title: "OneHandedGestureClickIndicator"
description: "A wrapper that replaces the content to indicate to the user that a gesture action is available."
type: "component"
lastmod: "2026-07-30T07:35:59.240813Z"
---
## API Reference

### OneHandedGestureClickIndicator

> Source set: Android

```kotlin
@Composable
public fun OneHandedGestureClickIndicator(
    gestureConfiguration: OneHandedGestureConfiguration,
    state: OneHandedGestureClickIndicatorState,
    modifier: Modifier = Modifier,
    gestureIndicatorSize: GestureIndicatorSize = OneHandedGestureDefaults.indicatorSize,
    gestureIndicatorTint: Color = OneHandedGestureDefaults.indicatorTint,
    content: @Composable () -> Unit,
)
```

#### Parameters

| | |
| --- | --- |
| gestureConfiguration | the specification for the one-handed gesture |
| state | The state object used to synchronize the indicator visibility. |
| modifier | The [Modifier](/jetpack-compose/androidx.compose.ui/ui/interfaces/Modifier) to be applied to the [OneHandedGestureClickIndicator](/jetpack-compose/androidx.wear.compose/compose-material3/components/OneHandedGestureClickIndicator) layout. |
| gestureIndicatorSize | The size constraints for the gesture indicator icon. |
| gestureIndicatorTint | The color which will be used for a tint of the gesture animation |
| content | The original component content (e.g., Text or Icon) to be displayed when no indicator is active. |

## Code Examples
### OneHandedGestureButtonSample
```kotlin
@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 { OneHandedGestureClickIndicatorState() }
    val coroutineScope = rememberCoroutineScope()
    Box(modifier = Modifier.fillMaxSize(), contentAlignment = Alignment.Center) {
        Button(
            onClick = onClick,
            interactionSource = interactionSource,
            modifier =
                Modifier.fillMaxWidth()
                    .oneHandedGesture(
                        gestureConfiguration = gestureConfig,
                        interactionSource = interactionSource,
                        onGestureLabel = "activate the button",
                        onGestureAvailable = {
                            coroutineScope.launch { indicatorState.showIndicator() }
                        },
                        onGesture = onClick,
                    ),
        ) {
            OneHandedGestureClickIndicator(gestureConfig, indicatorState) {
                Text(label, modifier = Modifier.fillMaxWidth())
            }
        }
    }
}
```
