# NavigationBackHandler

Common/All

## Functions summary

|---|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `@https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable <T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html> https://developer.android.com/reference/kotlin/androidx/navigation3/scene/NavigationBackHandler.composable#NavigationBackHandler(androidx.navigation3.scene.SceneState,androidx.navigationevent.compose.NavigationEventState,kotlin.Function0,kotlin.Function0)( sceneState: https://developer.android.com/reference/kotlin/androidx/navigation3/scene/SceneState<T>, state: https://developer.android.com/reference/kotlin/androidx/navigationevent/compose/NavigationEventState<https://developer.android.com/reference/kotlin/androidx/navigation3/scene/SceneInfo<T>>, onBackCancelled: () -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html, onBackCompleted: () -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` A composable that handles back navigation gestures for a `https://developer.android.com/reference/kotlin/androidx/navigation3/scene/SceneState`, driven by a `https://developer.android.com/reference/kotlin/androidx/navigationevent/compose/NavigationEventState`. | Cmn |

## Functions

### NavigationBackHandler

Cmn Artifact: [androidx.navigation3:navigation3-ui](https://developer.android.com/jetpack/androidx/releases/navigation3) [View Source](https://cs.android.com/search?q=file:androidx/navigation3/scene/NavigationEventHandler.kt+function:NavigationBackHandler) Added in [1.2.0](https://developer.android.com/jetpack/androidx/releases/navigation3#1.2.0)

```
@Composable
fun <T : Any> NavigationBackHandler(
    sceneState: SceneState<T>,
    state: NavigationEventState<SceneInfo<T>> = rememberNavigationEventState(sceneState),
    onBackCancelled: () -> Unit = {},
    onBackCompleted: () -> Unit
): Unit
```

A composable that handles back navigation gestures for a `https://developer.android.com/reference/kotlin/androidx/navigation3/scene/SceneState`, driven by a `https://developer.android.com/reference/kotlin/androidx/navigationevent/compose/NavigationEventState`.

This is a convenience wrapper around the core `https://developer.android.com/reference/kotlin/androidx/navigationevent/compose/NavigationBackHandler.composable#NavigationBackHandler(androidx.navigationevent.compose.NavigationEventState,kotlin.Boolean,kotlin.Function0,kotlin.Function0)` that automatically handles the `https://developer.android.com/reference/kotlin/androidx/navigationevent/compose/NavigationEventState` based on the provided `https://developer.android.com/reference/kotlin/androidx/navigation3/scene/package-summary#NavigationBackHandler(androidx.navigation3.scene.SceneState,androidx.navigationevent.compose.NavigationEventState,kotlin.Function0,kotlin.Function0)`.

| Parameters |
|---|---|
| `sceneState: https://developer.android.com/reference/kotlin/androidx/navigation3/scene/SceneState<T>` | the `https://developer.android.com/reference/kotlin/androidx/navigation3/scene/SceneState` that this handler is associated with. |
| `state: https://developer.android.com/reference/kotlin/androidx/navigationevent/compose/NavigationEventState<https://developer.android.com/reference/kotlin/androidx/navigation3/scene/SceneInfo<T>> = rememberNavigationEventState(sceneState)` | the hoisted `https://developer.android.com/reference/kotlin/androidx/navigationevent/compose/NavigationEventState` (returned from `https://developer.android.com/reference/kotlin/androidx/navigation3/scene/rememberNavigationEventState.composable#rememberNavigationEventState(androidx.navigation3.scene.SceneState)`) to be registered. |
| `onBackCancelled: () -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html = {}` | called if a back navigation gesture is cancelled. |
| `onBackCompleted: () -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | called when a back navigation gesture completes and navigation occurs. |