Package-level declarations

Types

Link copied to clipboard
data class AlphaModifierElement(val alpha: Float) : ModifierElement

Applies node opacity through the native rendering layer.

Link copied to clipboard
data class AnchoredDraggableModifierElement(val enabled: Boolean, val orientation: GestureOrientation, val anchorOffsetsPx: List<Float>, val currentOffsetPx: Float?, val onDelta: (delta: Float) -> Unit, val onSettleToOffset: (offsetPx: Float) -> Unit, val onDragCancelled: (reason: GestureCancellationReason) -> Unit? = null) : ModifierElement

Describes one-axis dragging that settles to a declared pixel anchor.

Link copied to clipboard

Requests animation of a node's real parent-local layout rectangle.

Link copied to clipboard

Requests animation when a node's measured content size changes.

Link copied to clipboard
data class AspectRatioModifierElement(val ratio: Float, val matchHeightConstraintsFirst: Boolean) : ModifierElement

Requests a measured width-to-height ratio within the incoming constraints.

Link copied to clipboard

Applies a packed ARGB background color.

Link copied to clipboard

Resolves an Android drawable resource as the node background.

Link copied to clipboard
data class BorderModifierElement(val width: UiDp, val color: Int) : ModifierElement

Draws a border following the resolved node shape.

Link copied to clipboard

Supplies alignment as Box parent data for one child.

Link copied to clipboard
data class ClickableModifierElement(val onClick: () -> Unit) : ModifierElement

Registers a click callback for a node.

Link copied to clipboard
data class ClipModifierElement(val clip: Boolean = true) : ModifierElement

Enables or disables clipping to the resolved node shape or bounds.

Link copied to clipboard
data class CombinedClickableModifierElement(val enabled: Boolean, val onClick: () -> Unit?, val onDoubleClick: () -> Unit?, val onLongClick: () -> Unit?) : ModifierElement

Registers optional single-click, double-click, and long-click callbacks as one recognizer.

Link copied to clipboard
data class ConstraintModifierElement(val constraint: ConstraintItemSpec, val referenceId: String? = null) : ModifierElement

Supplies one ConstraintLayout item contract as parent data.

Link copied to clipboard

Platform-neutral finite renderer model retained by animateContentSize.

Identifies a fixed-duration content-size model that may be repeated.

Link copied to clipboard
sealed interface ContentSizeEasingModel

Defines easing curves that an Android content-size renderer can reproduce.

Link copied to clipboard
data class ContentSizeKeyframeModel(val timeMillis: Int, val valueFraction: Float)

Defines one content-size animation keyframe.

Link copied to clipboard

Describes a content-size transition interpolated through keyframes.

Link copied to clipboard

Repeats a finite content-size animation.

Link copied to clipboard

Selects restart-from-beginning or alternating reverse repeat behavior.

Link copied to clipboard

Applies a content-size change without an animated interval.

Link copied to clipboard
data class ContentSizeSpringSpecModel(val dampingRatio: Float, val stiffness: Float, val maxDurationMillis: Int) : ContentSizeAnimationSpecModel

Describes a normalized-mass physical spring content-size transition.

Link copied to clipboard
data class ContentSizeTweenSpecModel(val durationMillis: Int, val delayMillis: Int, val easing: ContentSizeEasingModel) : ContentSizeDurationBasedAnimationSpecModel

Describes a duration-based content-size transition.

Link copied to clipboard
data class CornerRadiusModifierElement(val topStart: UiDp, val topEnd: UiDp, val bottomEnd: UiDp, val bottomStart: UiDp) : ModifierElement

Describes legacy rounded logical corners for background, border, and clipping.

Link copied to clipboard
data class DraggableModifierElement(val enabled: Boolean, val orientation: GestureOrientation, val onDragStarted: () -> Unit?, val onDragStopped: (velocity: Float) -> Unit?, val onDelta: (delta: Float) -> Unit, val onDragCancelled: (reason: GestureCancellationReason) -> Unit? = null) : ModifierElement

Describes one-axis drag recognition and lifecycle callbacks.

Link copied to clipboard
data class DrawBehindModifierElement(val key: Any, val onDraw: DrawBlock) : ModifierElement

Records commands drawn behind wrapped content.

Link copied to clipboard
data class DrawWithCacheModifierElement(val key: Any, val onBuildDrawCache: DrawCacheBuildBlock) : ModifierElement

Records a cache-aware draw-command builder.

Link copied to clipboard

Records a draw callback that explicitly controls wrapped-content placement.

Link copied to clipboard
data class DropShadowModifierElement(val shadows: List<UiShadow>, val shape: UiShape? = null) : ModifierElement

Stores an ordered, non-empty group of outer shadows with an optional shape override.

Link copied to clipboard
data class ElevationModifierElement(val elevation: UiDp) : ModifierElement

Applies native platform elevation independently of exact shadow modifiers.

Link copied to clipboard

Requests focus participation for the modified node.

Link copied to clipboard

Requests that a subtree participate as one focus-traversal group.

Link copied to clipboard

Applies declarative traversal and participation overrides.

Link copied to clipboard

Associates a stable FocusRequester with the modified platform focus target.

Link copied to clipboard

Requests a recognition priority for gesture elements in the same chain.

Link copied to clipboard
data class GraphicsLayerModifierElement(val scaleX: Float? = null, val scaleY: Float? = null, val rotationZ: Float? = null, val rotationX: Float? = null, val rotationY: Float? = null, val translationX: Float? = null, val translationY: Float? = null, val alpha: Float? = null, val transformOrigin: TransformOrigin? = null, val clip: Boolean? = null) : ModifierElement

Applies optional native View transform and clipping properties as one layer contract.

Link copied to clipboard

Requests one height measurement policy.

Link copied to clipboard

Supplies alignment as Column horizontal parent data for one child.

Link copied to clipboard
data class ImeInsetsPaddingModifierElement(val left: Boolean, val top: Boolean, val right: Boolean, val bottom: Boolean) : ModifierElement

Requests selected physical IME insets as additional inner padding.

Link copied to clipboard
data class InnerShadowModifierElement(val shadows: List<UiShadow>, val shape: UiShape? = null) : ModifierElement

Stores an ordered, non-empty group of inner shadows with an optional shape override.

Link copied to clipboard

Supplies already-resolved visual feedback for an interactive node.

Link copied to clipboard
data class KeyEventModifierElement(val onKeyEvent: (KeyEvent) -> Boolean) : ModifierElement

Registers a key callback for the bubbling phase after focused-child dispatch.

Link copied to clipboard
sealed interface LayoutAnimationSpecModel

Platform-neutral finite renderer model for content-size animation timing or physical motion.

Link copied to clipboard
data class LayoutIdModifierElement(val layoutId: String) : ModifierElement

Publishes layoutId as parent data for ConstraintLayout and related helpers.

Link copied to clipboard
data class MarginModifierElement(val left: UiDp, val top: UiDp, val right: UiDp, val bottom: UiDp) : ModifierElement

Supplies physical-edge margins to the native parent layout parameters.

Link copied to clipboard
data class MaxHeightModifierElement(val maxHeight: UiDp) : ModifierElement

Supplies a maximum measured height consumed by a renderer-owned measurement boundary.

Link copied to clipboard
data class MaxWidthModifierElement(val maxWidth: UiDp) : ModifierElement

Supplies a maximum measured width consumed by a renderer-owned measurement boundary.

Link copied to clipboard
data class MinHeightModifierElement(val minHeight: UiDp) : ModifierElement

Supplies a minimum measured height.

Link copied to clipboard
data class MinWidthModifierElement(val minWidth: UiDp) : ModifierElement

Supplies a minimum measured width.

Link copied to clipboard
open class Modifier

Stores an immutable, ordered chain of layout, style, interaction, semantics, and draw elements.

Link copied to clipboard
interface ModifierElement

Marks one platform-neutral contract element in a Modifier chain.

Link copied to clipboard
class NativeViewElement(val stableKey: Any, val configure: (Any) -> Unit) : ModifierElement

Applies a platform-specific configuration callback without placing a native type in this module.

Link copied to clipboard

Installs an ancestor nested-scroll connection and optional imperative dispatcher.

Link copied to clipboard
data class OffsetModifierElement(val x: UiDp, val y: UiDp) : ModifierElement

Offsets final placement without changing the size requested from the parent.

Link copied to clipboard
data class OnFocusChangedModifierElement(val onFocusChanged: (FocusState) -> Unit) : ModifierElement

Registers a focus-state listener for the modified target.

Link copied to clipboard

Publishes a rendered node as an anchor for an overlay host.

Link copied to clipboard
data class PaddingModifierElement(val left: UiDp, val top: UiDp, val right: UiDp, val bottom: UiDp) : ModifierElement

Adds physical-edge padding inside the node's measured content bounds.

Link copied to clipboard

Registers raw pointer-event handling with a semantic restart key.

Link copied to clipboard
data class PreviewKeyEventModifierElement(val onPreviewKeyEvent: (KeyEvent) -> Boolean) : ModifierElement

Registers a key callback for the preview/tunneling phase before focused-child dispatch.

Link copied to clipboard
data class RelativeImeInsetsPaddingModifierElement(val start: Boolean, val top: Boolean, val end: Boolean, val bottom: Boolean) : ModifierElement

Requests logical start/end IME insets as additional inner padding.

Link copied to clipboard
data class RelativeMarginModifierElement(val start: UiDp, val top: UiDp, val end: UiDp, val bottom: UiDp) : ModifierElement

Supplies logical-edge margins to the native parent layout parameters.

Link copied to clipboard
data class RelativeOffsetModifierElement(val horizontal: UiDp, val vertical: UiDp) : ModifierElement

Offsets final placement along the logical horizontal axis without changing measured size.

Link copied to clipboard
data class RelativePaddingModifierElement(val start: UiDp, val top: UiDp, val end: UiDp, val bottom: UiDp) : ModifierElement

Adds logical-edge padding inside the node's measured content bounds.

data class RelativeSystemBarsInsetsPaddingModifierElement(val start: Boolean, val top: Boolean, val end: Boolean, val bottom: Boolean) : ModifierElement

Requests logical start/end system-bar insets as additional inner padding.

Link copied to clipboard
data class SemanticsCollectionInfo(val rowCount: Int, val columnCount: Int, val hierarchical: Boolean = false, val selectionMode: SemanticsCollectionSelectionMode = SemanticsCollectionSelectionMode.None)

Describes the dimensions and selection policy of one accessibility collection.

Link copied to clipboard
data class SemanticsCollectionItemInfo(val rowIndex: Int, val columnIndex: Int, val rowSpan: Int = 1, val columnSpan: Int = 1)

Describes one node's logical position and span inside an accessibility collection.

Link copied to clipboard

Selects whether an accessibility collection allows no, one, or multiple selected items.

Link copied to clipboard
data class SemanticsConfiguration(val contentDescription: String? = null, val stateDescription: String? = null, val paneTitle: String? = null, val error: String? = null, val clickLabel: String? = null, val role: SemanticsRole? = null, val liveRegion: SemanticsLiveRegion? = null, val progressRange: SemanticsProgressRange? = null, val collectionInfo: SemanticsCollectionInfo? = null, val collectionItemInfo: SemanticsCollectionItemInfo? = null, val heading: Boolean? = null, val selected: Boolean? = null, val checked: Boolean? = null, val enabled: Boolean? = null, val mergeDescendants: Boolean? = null, val hidden: Boolean? = null)

Stores optional accessibility, testing, and semantic state for one node.

Link copied to clipboard

Selects no announcement, polite queued announcement, or assertive interruption for live updates.

Link copied to clipboard

Adds accessibility and testing semantics to a node.

Link copied to clipboard
data class SemanticsProgressRange(val current: Float, val start: Float, val endInclusive: Float, val steps: Int = 0)

Describes accessible progress within an inclusive finite or floating-point range.

Link copied to clipboard

Collects mutable assignments inside the semantics DSL.

Link copied to clipboard

Maps a node to a common control role consumed by accessibility and testing bridges.

Link copied to clipboard

Applies a platform-neutral shape to background, border, clipping, and default shadows.

Link copied to clipboard

Renderer-neutral shared-content endpoint metadata.

Link copied to clipboard
data class SizeModifierElement(val width: UiDimension, val height: UiDimension) : ModifierElement

Requests both width and height measurement policies.

Link copied to clipboard
data class SystemBarsInsetsPaddingModifierElement(val left: Boolean, val top: Boolean, val right: Boolean, val bottom: Boolean) : ModifierElement

Requests selected physical system-bar insets as additional inner padding.

Link copied to clipboard

Associates a stable testing identifier with a rendered node.

Link copied to clipboard
data class TransformableModifierElement(val enabled: Boolean, val onTransform: (TransformDelta) -> Unit, val onTransformStarted: () -> Unit? = null, val onTransformStopped: () -> Unit? = null, val onTransformCancelled: (reason: GestureCancellationReason) -> Unit? = null) : ModifierElement

Describes multi-pointer pan, zoom, and rotation recognition.

Link copied to clipboard
data class TransformOrigin(val pivotFractionX: Float, val pivotFractionY: Float)

Defines a transform pivot as fractions of the rendered View bounds.

Link copied to clipboard

Supplies alignment as Row vertical parent data for one child.

Link copied to clipboard

Maps declarative visibility to visible, layout-retaining invisible, or layout-removing gone.

Link copied to clipboard

Requests platform visibility for the modified node.

Link copied to clipboard
data class WeightModifierElement(val weight: Float) : ModifierElement

Supplies weight as row/column parent data for distributing remaining main-axis space.

Link copied to clipboard

Requests one width measurement policy.

Link copied to clipboard
data class ZIndexModifierElement(val zIndex: Float) : ModifierElement

Adds a finite sibling-order contribution without changing native elevation.

Functions

Link copied to clipboard

Appends native node opacity.

Link copied to clipboard
fun Modifier.aspectRatio(ratio: Float, matchHeightConstraintsFirst: Boolean = false): Modifier

Constrains the modified node to the requested width-to-height ratio.

Link copied to clipboard

Appends a packed ARGB background color.

Link copied to clipboard

Appends an Android drawable-resource background.

Link copied to clipboard
fun Modifier.border(width: UiDp, color: Int): Modifier

Appends a border following the currently resolved shape.

Link copied to clipboard
fun Modifier.clickable(onClick: () -> Unit): Modifier

Appends click handling to the modified node.

Link copied to clipboard

Enables clipping to the resolved shape or node bounds.

Link copied to clipboard

Appends an accessibility content description through semantics.

Link copied to clipboard

Appends one rounded radius for every logical corner.

fun Modifier.cornerRadius(top: UiDp = UiDp.Zero, bottom: UiDp = UiDp.Zero): Modifier

Appends separate rounded radii for the top and bottom corner pairs.

fun Modifier.cornerRadius(topStart: UiDp = UiDp.Zero, topEnd: UiDp = UiDp.Zero, bottomEnd: UiDp = UiDp.Zero, bottomStart: UiDp = UiDp.Zero): Modifier

Appends independently sized rounded logical corners.

Link copied to clipboard
fun Modifier.draw(key: Any = Unit, onDraw: DrawBlock): Modifier

Appends a draw-behind callback as a concise alias for drawBehind.

Link copied to clipboard
fun Modifier.drawBehind(key: Any = Unit, onDraw: DrawBlock): Modifier

Appends a draw callback that records commands behind wrapped content.

Link copied to clipboard
fun Modifier.drawCache(key: Any = Unit, onBuildDrawCache: DrawCacheBuildBlock): Modifier

Appends a cache-aware draw callback as a concise alias for drawWithCache.

Link copied to clipboard
fun Modifier.drawWithCache(key: Any = Unit, onBuildDrawCache: DrawCacheBuildBlock): Modifier

Appends a cache-aware draw-command builder.

Link copied to clipboard

Appends a draw callback that decides when or whether wrapped content is drawn.

Link copied to clipboard
fun Modifier.dropShadow(shadow: UiShadow, shape: UiShape? = null): Modifier

Appends one exact outer shadow independently of native elevation.

Link copied to clipboard
fun Modifier.dropShadows(shadows: List<UiShadow>, shape: UiShape? = null): Modifier

Appends exact outer shadows drawn in list and modifier declaration order.

Link copied to clipboard
fun Modifier.elevation(elevation: UiDp): Modifier

Appends native platform elevation independently of exact shadow rendering.

Link copied to clipboard

Requests the maximum height offered by the parent.

Link copied to clipboard

Requests the maximum width and height offered by the parent.

Link copied to clipboard

Requests the maximum width offered by the parent.

Link copied to clipboard
fun Modifier.focusable(enabled: Boolean = true): Modifier

Appends platform focus participation to the modified node.

Link copied to clipboard
fun Modifier.focusGroup(enabled: Boolean = true): Modifier

Marks the modified subtree as one platform focus-traversal group.

Link copied to clipboard

Appends directional focus policies collected by properties.

Link copied to clipboard

Attaches requester to the modified focus target while it is mounted.

Link copied to clipboard
fun Modifier.graphicsLayer(scaleX: Float? = null, scaleY: Float? = null, rotationZ: Float? = null, rotationX: Float? = null, rotationY: Float? = null, translationX: Float? = null, translationY: Float? = null, alpha: Float? = null, transformOrigin: TransformOrigin? = null, clip: Boolean? = null): Modifier

Appends optional native View transforms, opacity, pivot, and clipping as one layer contract.

Link copied to clipboard

Requests an exact height while leaving width to existing policy.

Link copied to clipboard
fun Modifier.imeInsetsPadding(left: Boolean = false, top: Boolean = false, right: Boolean = false, bottom: Boolean = true): Modifier

Adds selected physical IME insets to the node's inner padding.

Link copied to clipboard
fun Modifier.imeInsetsPaddingRelative(start: Boolean = false, top: Boolean = false, end: Boolean = false, bottom: Boolean = true): Modifier

Adds selected logical IME insets to the node's inner padding.

Link copied to clipboard
fun Modifier.innerShadow(shadow: UiShadow, shape: UiShape? = null): Modifier

Appends one exact inner shadow drawn above node content.

Link copied to clipboard
fun Modifier.innerShadows(shadows: List<UiShadow>, shape: UiShape? = null): Modifier

Appends exact inner shadows drawn above content in list and modifier declaration order.

Link copied to clipboard

Appends resolved visual feedback for interaction accepted by the modified node.

Link copied to clipboard

Supplies a parent-data identifier consumed by ConstraintLayout helpers.

Link copied to clipboard

Appends equal physical-edge margins for the native parent layout parameters.

fun Modifier.margin(horizontal: UiDp = UiDp.Zero, vertical: UiDp = UiDp.Zero): Modifier

Appends symmetric horizontal and vertical physical-edge margins.

fun Modifier.margin(left: UiDp = UiDp.Zero, top: UiDp = UiDp.Zero, right: UiDp = UiDp.Zero, bottom: UiDp = UiDp.Zero): Modifier

Appends independently sized physical-edge margins.

Link copied to clipboard
fun Modifier.marginRelative(start: UiDp = UiDp.Zero, top: UiDp = UiDp.Zero, end: UiDp = UiDp.Zero, bottom: UiDp = UiDp.Zero): Modifier

Appends independently sized logical-edge margins.

Link copied to clipboard
fun Modifier.maxHeight(maxHeight: UiDp): Modifier

Constrains the modified node to at most maxHeight.

Link copied to clipboard
fun Modifier.maxWidth(maxWidth: UiDp): Modifier

Constrains the modified node to at most maxWidth.

Link copied to clipboard
fun Modifier.minHeight(minHeight: UiDp): Modifier

Requests a minimum measured height without forcing a larger exact size.

Link copied to clipboard
fun Modifier.minWidth(minWidth: UiDp): Modifier

Requests a minimum measured width without forcing a larger exact size.

Link copied to clipboard
fun Modifier.offset(x: UiDp = UiDp.Zero, y: UiDp = UiDp.Zero): Modifier

Offsets final placement without changing measurement or sibling placement.

Link copied to clipboard
fun Modifier.offsetRelative(horizontal: UiDp = UiDp.Zero, vertical: UiDp = UiDp.Zero): Modifier

Offsets final placement along logical horizontal and physical vertical axes.

Link copied to clipboard
fun Modifier.onFocusChanged(onFocusChanged: (FocusState) -> Unit): Modifier

Appends a listener for focus changes on the modified target and its descendants.

Link copied to clipboard

Appends a key handler for the bubbling phase after focused-child dispatch.

Link copied to clipboard
fun Modifier.onPreviewKeyEvent(onPreviewKeyEvent: (KeyEvent) -> Boolean): Modifier

Appends a key handler for the preview phase before focused-child dispatch.

Link copied to clipboard

Publishes the modified node's native bounds under anchorId for overlay positioning.

Link copied to clipboard

Appends equal physical-edge padding inside the modified node.

fun Modifier.padding(horizontal: UiDp = UiDp.Zero, vertical: UiDp = UiDp.Zero): Modifier

Appends symmetric horizontal and vertical physical-edge padding.

fun Modifier.padding(left: UiDp = UiDp.Zero, top: UiDp = UiDp.Zero, right: UiDp = UiDp.Zero, bottom: UiDp = UiDp.Zero): Modifier

Appends independently sized physical-edge padding.

Link copied to clipboard
fun Modifier.paddingRelative(start: UiDp = UiDp.Zero, top: UiDp = UiDp.Zero, end: UiDp = UiDp.Zero, bottom: UiDp = UiDp.Zero): Modifier

Appends independently sized logical-edge padding.

Link copied to clipboard
fun Modifier.semantics(mergeDescendants: Boolean = false, properties: SemanticsPropertyReceiver.() -> Unit): Modifier

Appends accessibility and testing properties collected by properties.

Link copied to clipboard

Appends a general shape for background, border, clipping, and default shadow outlines.

Link copied to clipboard

Publishes one endpoint of bounds-and-crossfade visual continuity under key.

Link copied to clipboard

Publishes one endpoint of element-style visual continuity under key.

Link copied to clipboard
fun Modifier.size(width: UiDp, height: UiDp): Modifier

Requests exact width and height for the modified node.

Link copied to clipboard
fun Modifier.systemBarsInsetsPadding(left: Boolean = true, top: Boolean = true, right: Boolean = true, bottom: Boolean = true): Modifier

Adds selected physical system-bar insets to the node's inner padding.

Link copied to clipboard
fun Modifier.systemBarsInsetsPaddingRelative(start: Boolean = true, top: Boolean = true, end: Boolean = true, bottom: Boolean = true): Modifier

Adds selected logical system-bar insets to the node's inner padding.

Link copied to clipboard

Appends a caller-defined identifier for testing and diagnostics.

Link copied to clipboard

Appends native visibility behavior for the modified node.

Link copied to clipboard

Requests an exact width while leaving height to existing policy.

Link copied to clipboard

Adds zIndex to the node's sibling drawing-order total.