ConnectedButtonRow

fun ConnectedButtonRow(items: List<StylishConnectedButtonItem>, modifier: Modifier = Modifier, cornerRadius: Dp = StylishTheme.dimensions.connectedCornerRadius, spacing: Dp = StylishTheme.dimensions.connectedSpacing, button: ConnectedButtonItemContent)

A headless horizontally connected button layout (Structure layer).

Each button occupies an equal weight within the row and stretches to the tallest sibling via IntrinsicSize.Min. Outline edges and corner radii are computed automatically from each item's index: the first button rounds only its leading corners, the last button rounds only its trailing corners, and middle buttons have square corners. The actual rendering is delegated to the button lambda, which receives the pre-computed connection geometry.

This component makes no visual or interactive decisions — no colors, elevation, or animation. It is the headless backbone that the Stylish Finish counterpart StylishConnectedButtonRow consumes by supplying a styled button. Supply your own button to render a custom skin over the same connected geometry.

Parameters

items

The list of StylishConnectedButtonItem data objects describing each button.

cornerRadius

The radius applied to the outer corners. Defaults to StylishTheme.dimensions.connectedCornerRadius (12 dp).

spacing

The horizontal gap between adjacent buttons. Defaults to StylishTheme.dimensions.connectedSpacing (3 dp).

button

A composable lambda that renders a single button. Receives the item data, a modifier (including weight and fill-max-height), the connected Shape, the outline ConnectedEdges, and the outline ConnectedCorners.

See also