Package-level declarations

Functions

Link copied to clipboard

Swaps the pointer to a hand cursor while hovering — a desktop/web-only affordance (a no-op on touch platforms), used by SearchBarTileRenderer on its clickable icons since Material's own IconButton doesn't set this by default.

Link copied to clipboard

Converts a SizeSchema into a Compose sizing Modifier — the real implementation behind style.size(), applied by Modifier.styledWith as one step of the fixed style-application order. Width and height are resolved independently, each via its own when over SizeSchema.Behavior.

Link copied to clipboard
fun Modifier.styledWith(style: StyleSchema, onClick: () -> Unit? = null, onLongClick: () -> Unit? = null): Modifier

Applies a tile's StyleSchema to this modifier, optionally making the tile interactive.

Link copied to clipboard

Modifier.then(...) accepting a @Composable builder block instead of a plain Modifier value — lets a modifier chain step read @Composable ambient state (a CompositionLocal, remember, a theme value) inline, without breaking the chain into a separate val first. Used throughout Modifier.styledWith/Modifier.size for exactly that reason — most of their individual steps depend on LocalDensity/CompositionLocals only available inside a @Composable context.

Link copied to clipboard
fun Modifier.thenIf(condition: Boolean, ifFalse: @Composable Modifier.() -> Modifier? = null, ifTrue: @Composable Modifier.() -> Modifier): Modifier

Conditionally applies one of two @Composable modifier steps — the branch-and-chain idiom behind Modifier.styledWith's combinedClickable step, applied only when onClick/onLongClick is non-null.

Link copied to clipboard

Applies a @Composable modifier step only when value is non-null, passing the unwrapped value into block — the idiom behind every optional field in Modifier.styledWith (windowInsets, margin, clip, background, border, padding are each applied this way, since a tile's StyleSchema leaves most of them null by default).