ScrollableDefaults


Contains the default values used by scrollable

Summary

Public functions

FlingBehavior

Create and remember default FlingBehavior that will represent natural fling curve.

Cmn
OverscrollEffect

This function is deprecated. This API has been replaced with rememberOverscrollEffect, which queries theme provided OverscrollFactory values instead of the 'platform default' without customization.

Cmn
Boolean
reverseDirection(
    layoutDirection: LayoutDirection,
    orientation: Orientation,
    reverseScrolling: Boolean
)

Calculates the final reverseDirection value for a scrollable component.

Cmn

Public functions

flingBehavior

@Composable
fun flingBehavior(): FlingBehavior

Create and remember default FlingBehavior that will represent natural fling curve.

overscrollEffect

@Composable
fun overscrollEffect(): OverscrollEffect

Returns a remembered OverscrollEffect created from the current value of LocalOverscrollFactory.

This API has been deprpecated, and replaced with rememberOverscrollEffect

reverseDirection

fun reverseDirection(
    layoutDirection: LayoutDirection,
    orientation: Orientation,
    reverseScrolling: Boolean
): Boolean

Calculates the final reverseDirection value for a scrollable component.

This is a helper function used by androidx.compose.foundation.scrollableArea to determine whether to reverse the direction of scroll input. The goal is to provide a "natural" scrolling experience where content moves with the user's gesture, while also accounting for the layoutDirection.

The logic is as follows:

  1. To achieve "natural" scrolling (content moves with the gesture), scroll deltas are inverted. This function returns true by default when reverseScrolling is false.

  2. In a Right-to-Left (Rtl) context with a Horizontal orientation, the direction is flipped an additional time to maintain the natural feel, as the content is laid out from right to left.

Parameters
layoutDirection: LayoutDirection

current layout direction (e.g. from LocalLayoutDirection)

orientation: Orientation

orientation of scroll

reverseScrolling: Boolean

whether scrolling direction should be reversed

Returns
Boolean

true if scroll direction should be reversed, false otherwise.