---
title: "progressSemantics"
description: "Contains the [semantics] required for a determinate progress indicator or the progress part of a
slider, that represents progress within [valueRange]. [value] outside of this range will be
coerced into this range."
type: "modifier"
---

<div class='type'>Compose Modifier</div>

<a id='references'></a>
<div class='sourceset sourceset-common'>Common</div>


```kotlin
fun Modifier.progressSemantics(
    value: Float,
    valueRange: ClosedFloatingPointRange<Float> = 0f..1f,
    @IntRange(from = 0) steps: Int = 0,
): Modifier
```


Contains the `semantics` required for a determinate progress indicator or the progress part of a
slider, that represents progress within `valueRange`. `value` outside of this range will be
coerced into this range.

#### Parameters

| | |
| --- | --- |
| value | current value of the ProgressIndicator/Slider. If outside of `valueRange` provided, value will be coerced to this range. Must not be NaN. |
| valueRange | range of values that value can take. Passed `value` will be coerced to this range |
| steps | if greater than 0, specifies the amounts of discrete values, evenly distributed between across the whole value range. If 0, any value from the range specified is allowed. Must not be negative. |




<div class='sourceset sourceset-common'>Common</div>


```kotlin
fun Modifier.progressSemantics(): Modifier
```


Contains the `semantics` required for an indeterminate progress indicator, that represents the
fact of the in-progress operation.

If you need determinate progress 0.0 to 1.0, consider using overload with the progress parameter.



## Code Examples
### DeterminateProgressSemanticsSample
```kotlin
@Composable
fun DeterminateProgressSemanticsSample() {
    val progress = 0.5f // emulate progress from some state
    Box(
        Modifier.progressSemantics(progress)
            .size((progress * 100).dp, 4.dp)
            .background(color = Color.Cyan)
    )
}
```
### IndeterminateProgressSemanticsSample
```kotlin
@Composable
fun IndeterminateProgressSemanticsSample() {
    Box(Modifier.progressSemantics().background(color = Color.Cyan)) {
        Text("Operation is on progress")
    }
}
```

