# SeekBackButtonState

Artifact: [androidx.media3:media3-ui-compose](https://developer.android.com/jetpack/androidx/releases/media3) [View Source](https://cs.android.com/search?q=file:androidx/media3/ui/compose/state/SeekBackButtonState.kt+class:androidx.media3.ui.compose.state.SeekBackButtonState)

<br />

```
@UnstableApi
class SeekBackButtonState
```

<br />

*** ** * ** ***

State that holds all interactions to correctly deal with a UI component representing a seek back button.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/ui/compose/state/SeekBackButtonState#SeekBackButtonState(androidx.media3.common.Player)(player: https://developer.android.com/reference/kotlin/androidx/media3/common/Player?)` |

| ### Public functions |
|---|---|
| `suspend https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/ui/compose/state/SeekBackButtonState#observe()()` Subscribes to updates from `https://developer.android.com/reference/kotlin/androidx/media3/common/Player.Events` and listens to |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/ui/compose/state/SeekBackButtonState#onClick()()` Handles the interaction with the SeekBackButton by seeking back in the current `https://developer.android.com/reference/kotlin/androidx/media3/common/MediaItem` by `https://developer.android.com/reference/kotlin/androidx/media3/ui/compose/state/SeekBackButtonState#seekBackAmountMs()` milliseconds. |

| ### Public properties |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/ui/compose/state/SeekBackButtonState#isEnabled()` true if `https://developer.android.com/reference/kotlin/androidx/media3/ui/compose/state/SeekBackButtonState#player()` is not `null` and `https://developer.android.com/reference/kotlin/androidx/media3/common/Player#COMMAND_SEEK_BACK()` is available. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/ui/compose/state/SeekBackButtonState#seekBackAmountMs()` determined by `https://developer.android.com/reference/kotlin/androidx/media3/common/Player#getSeekBackIncrement()`. |

## Public constructors

### SeekBackButtonState

```
SeekBackButtonState(player: Player?)
```

## Public functions

### observe

```
suspend fun observe(): Unit
```

Subscribes to updates from `https://developer.android.com/reference/kotlin/androidx/media3/common/Player.Events` and listens to

- `https://developer.android.com/reference/kotlin/androidx/media3/common/Player#EVENT_AVAILABLE_COMMANDS_CHANGED()` in order to determine whether the button should be enabled, i.e. respond to user input.

- `https://developer.android.com/reference/kotlin/androidx/media3/common/Player#EVENT_SEEK_BACK_INCREMENT_CHANGED()` to get the newest seek back increment.

### onClick

```
fun onClick(): Unit
```

Handles the interaction with the SeekBackButton by seeking back in the current `https://developer.android.com/reference/kotlin/androidx/media3/common/MediaItem` by `https://developer.android.com/reference/kotlin/androidx/media3/ui/compose/state/SeekBackButtonState#seekBackAmountMs()` milliseconds.

This method does nothing if `https://developer.android.com/reference/kotlin/androidx/media3/common/Player#COMMAND_SEEK_BACK()` is not available.

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/common/Player#seekBack()` |   |
| `https://developer.android.com/reference/kotlin/androidx/media3/common/Player#COMMAND_SEEK_BACK()` |   |

## Public properties

### isEnabled

```
val isEnabled: Boolean
```

true if `https://developer.android.com/reference/kotlin/androidx/media3/ui/compose/state/SeekBackButtonState#player()` is not `null` and `https://developer.android.com/reference/kotlin/androidx/media3/common/Player#COMMAND_SEEK_BACK()` is available.

### seekBackAmountMs

```
val seekBackAmountMs: Long
```

determined by `https://developer.android.com/reference/kotlin/androidx/media3/common/Player#getSeekBackIncrement()`. Defaults to `0` if `https://developer.android.com/reference/kotlin/androidx/media3/ui/compose/state/SeekBackButtonState#player()` is `null`.