Package-level declarations

Types

Link copied to clipboard
data class BadgeColors(val containerColor: Color, val contentColor: Color, val strokeColor: Color)
Link copied to clipboard

Contains default values used by Badge and BadgeBox.

Link copied to clipboard
data class BasicComponentColors(val color: Color, val disabledColor: Color)
Link copied to clipboard
Link copied to clipboard
data class BreadcrumbBarColors(val color: Color, val highlightColor: Color, val disabledColor: Color, val separatorColor: Color, val backgroundColor: Color, val highlightBackgroundColor: Color, val disabledBackgroundColor: Color)
Link copied to clipboard
Link copied to clipboard
data class BreadcrumbItem(val path: String, val text: String? = null)

A single segment in a BreadcrumbBar. Each item carries a path segment used to reconstruct the full path, and an optional text for display. When text is null, path is shown.

Link copied to clipboard
data class ButtonColors(val color: Color, val disabledColor: Color, val contentColor: Color, val disabledContentColor: Color)
Link copied to clipboard
Link copied to clipboard
data class CardColors(val color: Color, val contentColor: Color, val pressedColor: Color)

Colors used by a Card.

Link copied to clipboard
Link copied to clipboard

The position of a row inside a card group, mirroring COUI's COUICardListHelper constants (NONE = 0, HEAD = 1, MIDDLE = 2, TAIL = 3, FULL = 4).

Link copied to clipboard
data class CheckboxColors(checkedForegroundColor: Color, uncheckedForegroundColor: Color, disabledCheckedForegroundColor: Color, disabledUncheckedForegroundColor: Color, checkedBackgroundColor: Color, uncheckedBackgroundColor: Color, disabledCheckedBackgroundColor: Color, disabledUncheckedBackgroundColor: Color)
Link copied to clipboard
Link copied to clipboard
data class ChipColors(val containerColor: Color, val selectedContainerColor: Color, val disabledContainerColor: Color, val selectedDisabledContainerColor: Color, val contentColor: Color, val selectedContentColor: Color, val disabledContentColor: Color, val selectedDisabledContentColor: Color)

Colors used by a Chip.

Link copied to clipboard

Contains default values used by Chip.

Link copied to clipboard
data class CodeTextFieldColors(val cellBackgroundColor: Color, val textColor: Color, val focusedStrokeColor: Color, val securityCircleColor: Color, val cursorColor: Color)

Colors used by a CodeTextField in different parts of the component.

Link copied to clipboard

Contains default values used by CodeTextField.

Link copied to clipboard
Link copied to clipboard

Contains default values used by ColorSwatchPicker.

Link copied to clipboard

Contains default values used by DatePicker.

Link copied to clipboard
data class DateValue(val year: Int, val month: Int, val day: Int)

A plain calendar date holder used by DatePicker.

Link copied to clipboard
Link copied to clipboard
data class DropdownColors(val contentColor: Color, val summaryColor: Color, val containerColor: Color, val selectedContentColor: Color, val selectedSummaryColor: Color, val selectedContainerColor: Color, val selectedIndicatorColor: Color, val disabledContentColor: Color = contentColor, val alertContentColor: Color = contentColor, val headerColor: Color = summaryColor)

Colors used by dropdown option rows.

Link copied to clipboard
Link copied to clipboard
data class DropdownEntry(val items: List<DropdownItem>, val enabled: Boolean = true, val title: String? = null)

A group of dropdown items.

Link copied to clipboard
data class DropdownItem(val text: String, val enabled: Boolean = true, val selected: Boolean = false, val onClick: () -> Unit? = null, val icon: @Composable (Modifier) -> Unit? = null, val summary: String? = null, val children: List<DropdownItem>? = null, val hint: @Composable () -> Unit? = null, val alert: Boolean = false)

An item shown inside a dropdown, spinner, or dropdown menu.

Link copied to clipboard
Link copied to clipboard

Contains default values used by FloatingActionButton.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
data class FullPageStatementColors(val titleColor: Color, val contentColor: Color, val secondaryButtonColor: Color)

Colors used by a FullPageStatement.

Link copied to clipboard

Contains default values used by FullPageStatement.

Link copied to clipboard
Link copied to clipboard
data class InputViewColors(val cardColor: Color, val titleColor: Color, val disabledTitleColor: Color, val countColor: Color, val errorColor: Color)

Colors used by an InputView in different parts of the component.

Link copied to clipboard

Contains default values used by InputView.

Link copied to clipboard
Link copied to clipboard
data class ListPopupLayoutInfo(val windowBounds: IntRect, val popupMargin: IntRect, val effectiveTransformOrigin: TransformOrigin, val localTransformOrigin: TransformOrigin, val popupLayoutPosition: PopupLayoutPosition)

The resolved layout information for a list popup, produced by rememberListPopupLayoutInfo.

Link copied to clipboard

Contains default values used by LoadingButton.

Link copied to clipboard

Contains default values used by NavigationBar and NavigationBarItem.

Link copied to clipboard

Defines the display mode for items in a NavigationBar.

Link copied to clipboard
data class NavigationItem(val label: String, val icon: ImageVector)

The data class for NavigationBar.

Link copied to clipboard

Contains default values used by NavigationRail and NavigationRailItem.

Link copied to clipboard

Defines the display mode for items in a NavigationRail.

Link copied to clipboard
data class NumberPickerColors(selectedTextColor: Color, unselectedTextColor: Color, disabledSelectedTextColor: Color, disabledUnselectedTextColor: Color)

The colors for a NumberPicker.

Link copied to clipboard

Contains default values used by NumberPicker.

Link copied to clipboard
data class PopupLayoutPosition(val showBelow: Boolean, val showAbove: Boolean, val isRightAligned: Boolean)

Describes how the popup is placed relative to its anchor, used to drive the directional reveal and transform origin.

Link copied to clipboard
Link copied to clipboard

Records where an anchor was last touched, so a popup can open at the finger rather than centred on the anchor — COUI PreciseClickHelper / PreciseLongPressHelper, which stash the DOWN (x, y) and pass it to the click callback, after which PopupMenuLocateHelper.setAnchor collapses the anchor bounds to that single point.

Link copied to clipboard
data class ProgressIndicatorColors(foregroundColor: Color, disabledForegroundColor: Color, backgroundColor: Color)
Link copied to clipboard
Link copied to clipboard

Default values for the PullToRefresh component.

Link copied to clipboard
class PullToRefreshState(coroutineScope: CoroutineScope)

A UI state holder for the PullToRefresh composable.

Link copied to clipboard
data class RadioButtonColors(selectedColor: Color, disabledSelectedColor: Color, unselectedColor: Color, disabledUnselectedColor: Color, centerColor: Color, disabledCenterColor: Color)
Link copied to clipboard
Link copied to clipboard
sealed interface RefreshState

Represents the various visual states of the pull-to-refresh indicator.

Link copied to clipboard
data class RichTooltipColors(val containerColor: Color, val contentColor: Color, val titleContentColor: Color, val actionContentColor: Color)

Colors for RichTooltip.

Link copied to clipboard

Defines how to scroll the scrollable component and how to display a scrollbar for it.

Link copied to clipboard
data class ScrollBarColors(val thumbColor: Color, val trackColor: Color)

Colors for the scrollbar component.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
data class SearchBarColors(val backgroundColor: Color, val labelColor: Color, val iconColor: Color, val clearIconColor: Color)

Colors used by the InputField of a SearchBar.

Link copied to clipboard

Contains default values used by SearchBar and InputField.

Link copied to clipboard
data class SliderColors(foregroundColor: Color, disabledForegroundColor: Color, backgroundColor: Color, disabledBackgroundColor: Color, thumbColor: Color, disabledThumbColor: Color, keyPointColor: Color, keyPointForegroundColor: Color)
Link copied to clipboard
Link copied to clipboard

Contains default values used by SmallTitle.

Link copied to clipboard
data class SnackbarColors(val containerColor: Color, val contentColor: Color, val actionContentColor: Color, val dismissActionContentColor: Color)

Colors for Snackbar.

Link copied to clipboard
interface SnackbarData

Interface representing the data of a Snackbar.

Link copied to clipboard

Defaults for Snackbar.

Link copied to clipboard
sealed interface SnackbarDuration

Possible durations of the Snackbar.

Link copied to clipboard
Link copied to clipboard

Possible results of the Snackbar.

Link copied to clipboard
data class SnackbarVisuals(val message: String, val actionLabel: String?, val withDismissAction: Boolean, val duration: SnackbarDuration)

Visuals for a Snackbar.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
data class StepperColors(val buttonColor: Color, val contentColor: Color, val disabledContentColor: Color)

Colors used by a Stepper.

Link copied to clipboard

Contains default values used by Stepper.

Link copied to clipboard
Link copied to clipboard
data class SwitchColors(checkedThumbColor: Color, uncheckedThumbColor: Color, disabledCheckedThumbColor: Color, disabledUncheckedThumbColor: Color, checkedTrackColor: Color, uncheckedTrackColor: Color, disabledCheckedTrackColor: Color, disabledUncheckedTrackColor: Color)
Link copied to clipboard
Link copied to clipboard
data class TabRowColors(backgroundColor: Color, contentColor: Color, selectedBackgroundColor: Color, selectedContentColor: Color)
Link copied to clipboard
Link copied to clipboard
data class TextButtonColors(val color: Color, val disabledColor: Color, val textColor: Color, val disabledTextColor: Color)
Link copied to clipboard
data class TextFieldColors(val backgroundColor: Color, val labelColor: Color, val borderColor: Color, val unfocusedBorderColor: Color, val errorColor: Color, val counterColor: Color, val iconColor: Color, val disabledTextColor: Color)

Colors used by a TextField in different parts of the component.

Link copied to clipboard

Contains default values used by TextField.

Link copied to clipboard

Background mode of a TextField, mirroring COUIEditText couiBackgroundMode.

Link copied to clipboard

Contains default values used by TimePicker.

Link copied to clipboard
data class TimeValue(val hour: Int, val minute: Int)

A plain time-of-day holder used by TimePicker.

Link copied to clipboard

Represents the position of a floating toolbar within the Scaffold. Used by Scaffold for placement calculations.

Link copied to clipboard

The preferred position of a tooltip relative to its anchor. The tooltip flips to the opposite side when there is not enough room on the preferred side. Start / End resolve to Left / Right following the layout direction.

Link copied to clipboard
Link copied to clipboard
sealed interface TooltipScope

Receiver scope for the TooltipBox tooltip content (PlainTooltip / RichTooltip). It exposes the resolved anchor position and the anchor bounds so a caret can be drawn pointing at the anchor.

Link copied to clipboard

The state that controls the visibility of a TooltipBox.

Link copied to clipboard

Contains default values used by TopAppBar and SmallTopAppBar.

Link copied to clipboard
class TopAppBarState(initialHeightOffsetLimit: Float, initialHeightOffset: Float, initialContentOffset: Float)

A state object that can be hoisted to control and observe the top app bar state. The state is read and updated by a ScrollBehavior implementation.

Link copied to clipboard
data class TopTipsColors(val containerColor: Color, val contentColor: Color, val actionColor: Color, val closeButtonColor: Color, val closeIconColor: Color)

Colors used by a TopTips.

Link copied to clipboard

Contains default values used by TopTips.

Properties

Link copied to clipboard

A composition local to control the display mode for items in a NavigationBar.

Link copied to clipboard

A composition local to control the display mode for items in a NavigationRail.

Functions

Link copied to clipboard
fun Badge(modifier: Modifier = Modifier, count: Int = 0, stroke: Boolean = false, colors: BadgeColors = BadgeDefaults.badgeColors(), dotDiameter: Dp = BadgeDefaults.DotDiameter, height: Dp = BadgeDefaults.Height)

A Badge component with COUI style.

Link copied to clipboard
fun BadgeBox(badge: @Composable () -> Unit, modifier: Modifier = Modifier, overhang: Dp = BadgeDefaults.DotOverhang, content: @Composable () -> Unit)

A layout that anchors badge at the top end corner of content, mirroring COUIRedDotFrameLayout.

Link copied to clipboard
fun BasicComponent(modifier: Modifier = Modifier, startAction: @Composable () -> Unit? = null, endActions: @Composable RowScope.() -> Unit? = null, bottomAction: @Composable () -> Unit? = null, insideMargin: PaddingValues = BasicComponentDefaults.InsideMargin, cardListPosition: CardListPosition = CardListPosition.None, onClick: () -> Unit? = null, onClickLabel: String? = null, role: Role? = null, holdDownState: Boolean = false, enabled: Boolean = true, interactionSource: MutableInteractionSource? = null, content: @Composable ColumnScope.() -> Unit)
fun BasicComponent(modifier: Modifier = Modifier, title: String? = null, titleColor: BasicComponentColors = BasicComponentDefaults.titleColor(), summary: String? = null, summaryColor: BasicComponentColors = BasicComponentDefaults.summaryColor(), startAction: @Composable () -> Unit? = null, endActions: @Composable RowScope.() -> Unit? = null, bottomAction: @Composable () -> Unit? = null, insideMargin: PaddingValues = BasicComponentDefaults.InsideMargin, cardListPosition: CardListPosition = CardListPosition.None, onClick: () -> Unit? = null, onClickLabel: String? = null, role: Role? = null, holdDownState: Boolean = false, enabled: Boolean = true, interactionSource: MutableInteractionSource? = null)

A basic component with COUI style. Widely used in other extension components.

Link copied to clipboard
fun BreadcrumbBar(items: List<BreadcrumbItem>, onItemClick: (Int) -> Unit, modifier: Modifier = Modifier, highlightIndex: Int = items.lastIndex, enabled: Boolean = true, colors: BreadcrumbBarColors = BreadcrumbBarDefaults.breadcrumbBarColors(), insideMargin: PaddingValues = BreadcrumbBarDefaults.InsideMargin, itemMaxWidth: Dp = BreadcrumbBarDefaults.ItemMaxWidth, scrollState: ScrollState? = null, interactionSource: MutableInteractionSource? = null, indication: Indication? = LocalIndication.current)

A horizontal breadcrumb navigation bar with Miuix style. Displays a trail of path segments as capsule-shaped items separated by arrow icons. When the content overflows the available width, it scrolls horizontally instead of collapsing — matching the file-manager convention on mobile devices.

Link copied to clipboard
fun Button(onClick: () -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, pressScaleEnabled: Boolean = true, cornerRadius: Dp = ButtonDefaults.CornerRadius, minWidth: Dp = ButtonDefaults.MinWidth, minHeight: Dp = ButtonDefaults.MinHeight, colors: ButtonColors = ButtonDefaults.buttonColors(), insideMargin: PaddingValues = ButtonDefaults.InsideMargin, interactionSource: MutableInteractionSource? = null, indication: Indication? = null, content: @Composable RowScope.() -> Unit)

A Button component with COUI style.

Link copied to clipboard
fun Card(modifier: Modifier = Modifier, cornerRadius: Dp = CardDefaults.CornerRadius, insideMargin: PaddingValues = CardDefaults.InsideMargin, colors: CardColors = CardDefaults.defaultColors(), content: @Composable ColumnScope.() -> Unit)

A Card component with COUI style. Card contain content and actions that relate information about a subject.

fun Card(modifier: Modifier = Modifier, cornerRadius: Dp = CardDefaults.CornerRadius, insideMargin: PaddingValues = CardDefaults.InsideMargin, colors: CardColors = CardDefaults.defaultColors(), pressFeedbackType: PressFeedbackType = PressFeedbackType.Tint, showIndication: Boolean = false, holdDownState: Boolean = false, onClick: () -> Unit? = null, onLongPress: () -> Unit? = null, content: @Composable ColumnScope.() -> Unit)

A Card component with COUI style. Card contain contain content and actions that relate information about a subject.

Link copied to clipboard

Resolves the CardListPosition of the row at index within a card group of count rows, mirroring COUI's COUICardListHelper.getPositionInGroup(int, int).

Link copied to clipboard
fun Checkbox(state: ToggleableState, onClick: () -> Unit?, modifier: Modifier = Modifier, colors: CheckboxColors = CheckboxDefaults.checkboxColors(), enabled: Boolean = true)

A Checkbox component with COUI style, supporting three states: On, Off, and Indeterminate.

Link copied to clipboard
fun Chip(selected: Boolean, onClick: () -> Unit, label: String, modifier: Modifier = Modifier, enabled: Boolean = true, icon: @Composable () -> Unit? = null, cornerRadius: Dp = ChipDefaults.CornerRadius, minWidth: Dp = ChipDefaults.MinWidth, minHeight: Dp = ChipDefaults.MinHeight, maxWidth: Dp = ChipDefaults.MaxWidth, colors: ChipColors = ChipDefaults.chipColors(), insideMargin: PaddingValues = ChipDefaults.InsideMargin, interactionSource: MutableInteractionSource? = null, indication: Indication? = null)

A Chip component with COUI style.

Link copied to clipboard
fun CircularProgressIndicator(modifier: Modifier = Modifier, progress: Float? = null, colors: ProgressIndicatorColors = ProgressIndicatorDefaults.circularProgressIndicatorColors(), strokeWidth: Dp = ProgressIndicatorDefaults.DefaultCircularProgressIndicatorStrokeWidth, size: Dp = ProgressIndicatorDefaults.DefaultCircularProgressIndicatorSize)

A CircularProgressIndicator with COUI style.

Link copied to clipboard
fun CodeTextField(value: String, onValueChange: (String) -> Unit, modifier: Modifier = Modifier, cellCount: Int = CodeTextFieldDefaults.CellCount, enabled: Boolean = true, security: Boolean = false, cellSize: DpSize = CodeTextFieldDefaults.CellSize, cellCornerRadius: Dp = CodeTextFieldDefaults.CellCornerRadius, colors: CodeTextFieldColors = CodeTextFieldDefaults.codeTextFieldColors(), textStyle: TextStyle = CodeTextFieldDefaults.textStyle(), keyboardOptions: KeyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Number), onComplete: (String) -> Unit? = null, interactionSource: MutableInteractionSource? = null)

A CodeTextField component with COUI style.

Link copied to clipboard
fun ColorPalette(color: Color, onColorChanged: (Color) -> Unit, modifier: Modifier = Modifier, rows: Int = 7, hueColumns: Int = 12, includeGrayColumn: Boolean = true, showPreview: Boolean = true, cornerRadius: Dp = 16.dp, indicatorRadius: Dp = 10.dp)

A color palette component that allows users to select colors from a grid of HSV values.

Link copied to clipboard
fun ColorPicker(color: Color, onColorChanged: (Color) -> Unit, modifier: Modifier = Modifier, showPreview: Boolean = true, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect, colorSpace: ColorSpace = ColorSpace.HSV)

A ColorPicker component with COUI style that supports multiple color spaces.

Link copied to clipboard
fun ColorSwatchPicker(colors: List<Color>, selectedIndex: Int, onSwatchSelected: (Int) -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, swatchSize: Dp = ColorSwatchPickerDefaults.SwatchSize, cellSize: Dp = ColorSwatchPickerDefaults.CellSize, ringStrokeWidth: Dp = ColorSwatchPickerDefaults.RingStrokeWidth, ringColor: Color = COUITheme.colorScheme.primary, spacing: Dp = ColorSwatchPickerDefaults.Spacing)

A ColorSwatchPicker component with COUI style.

Link copied to clipboard
fun COUIScrollBehavior(state: TopAppBarState = rememberTopAppBarState(), canScroll: () -> Boolean = { true }, snapAnimationSpec: AnimationSpec<Float>? = tween(durationMillis = SnapAnimationDuration, easing = SnapAnimationEasing), flingAnimationSpec: DecayAnimationSpec<Float>? = rememberSplineBasedDecay()): ScrollBehavior

Returns a ScrollBehavior that adjusts its properties to affect the colors and height of the top app bar.

Link copied to clipboard
fun DatePicker(value: DateValue, onValueChange: (DateValue) -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, yearRange: IntRange = DatePickerDefaults.YearRange, yearLabel: (Int) -> String = DatePickerDefaults.YearLabel, monthLabel: (Int) -> String = DatePickerDefaults.MonthLabel, dayLabel: (Int) -> String = DatePickerDefaults.DayLabel, yearColumnWidth: Dp = DatePickerDefaults.YearColumnWidth, monthColumnWidth: Dp = DatePickerDefaults.MonthColumnWidth, dayColumnWidth: Dp = DatePickerDefaults.DayColumnWidth, colors: NumberPickerColors = NumberPickerDefaults.colors(), textStyle: TextStyle = COUITheme.textStyles.title3, itemHeight: Dp = NumberPickerDefaults.ItemHeight, insideMargin: PaddingValues = DatePickerDefaults.InsideMargin)

A DatePicker component with COUI style.

Link copied to clipboard
fun Modifier.drawCheckerboard(cellSizeDp: Dp = 3.dp, lightColor: Color = Color(0xFFCCCCCC), darkColor: Color = Color(0xFFAAAAAA)): Modifier
Link copied to clipboard
fun RowScope.DropdownArrowEndAction(actionColor: Color, modifier: Modifier = Modifier)
Link copied to clipboard
fun DropdownHeaderItem(text: String, modifier: Modifier = Modifier, color: Color = DropdownDefaults.dropdownColors().headerColor, isFirst: Boolean = false)

A non-clickable group-title row shown inside a dropdown popup (COUI coui_popup_list_window_header_item.xml).

Link copied to clipboard
fun DropdownImpl(text: String, optionSize: Int, isSelected: Boolean, index: Int, dropdownColors: DropdownColors = DropdownDefaults.dropdownColors(), enabled: Boolean = true, dialogMode: Boolean = false, onSelectedIndexChange: (Int) -> Unit)

fun DropdownImpl(item: DropdownItem, optionSize: Int, isSelected: Boolean, index: Int, dropdownColors: DropdownColors = DropdownDefaults.dropdownColors(), enabled: Boolean = item.enabled, dialogMode: Boolean = false, hasSubmenu: Boolean = false, isFirst: Boolean = index == 0, isLast: Boolean = index == optionSize - 1, onSelectedIndexChange: (Int) -> Unit)

The implementation of the dropdown.

Link copied to clipboard
fun FloatingActionButton(onClick: () -> Unit, modifier: Modifier = Modifier, shape: Shape = CircleShape, containerColor: Color = COUITheme.colorScheme.primary, shadowElevation: Dp = FloatingActionButtonDefaults.ShadowElevation, minWidth: Dp = FloatingActionButtonDefaults.MinWidth, minHeight: Dp = FloatingActionButtonDefaults.MinHeight, interactionSource: MutableInteractionSource? = null, content: @Composable () -> Unit)

A FloatingActionButton component with COUI style.

Link copied to clipboard
fun FloatingNavigationBar(modifier: Modifier = Modifier, color: Color = COUITheme.colorScheme.surfaceContainer, cornerRadius: Dp = FloatingToolbarDefaults.CornerRadius, horizontalAlignment: Alignment.Horizontal = CenterHorizontally, horizontalOutSidePadding: Dp = FloatingNavigationBarDefaults.HorizontalOutSidePadding, shadowElevation: Dp = FloatingNavigationBarDefaults.ShadowElevation, showDivider: Boolean = false, defaultWindowInsetsPadding: Boolean = true, content: @Composable () -> Unit)

A floating navigation bar that supports 2 to 5 items.

Link copied to clipboard
fun FloatingNavigationBarItem(selected: Boolean, onClick: () -> Unit, icon: ImageVector, label: String, modifier: Modifier = Modifier, enabled: Boolean = true)
Link copied to clipboard
fun FloatingToolbar(modifier: Modifier = Modifier, color: Color = FloatingToolbarDefaults.defaultColor(), cornerRadius: Dp = FloatingToolbarDefaults.CornerRadius, outSidePadding: PaddingValues = FloatingToolbarDefaults.OutSidePadding, shadowElevation: Dp = 4.dp, showDivider: Boolean = false, content: @Composable () -> Unit)

A FloatingToolbar that renders its content in a Card, arranged either horizontally or vertically. The actual placement on screen is handled by the parent, typically Scaffold.

Link copied to clipboard
fun FullPageStatement(title: String, content: String, primaryButtonText: String, onPrimaryButtonClick: () -> Unit, modifier: Modifier = Modifier, secondaryButtonText: String? = null, onSecondaryButtonClick: () -> Unit? = null, primaryButtonWidth: Dp? = null, colors: FullPageStatementColors = FullPageStatementDefaults.fullPageStatementColors(), primaryButtonColors: ButtonColors = ButtonDefaults.buttonColorsPrimary(), contentPadding: PaddingValues = FullPageStatementDefaults.ContentPadding, scrollState: ScrollState = rememberScrollState())

A full page statement component with COUI style, mirroring ColorOS's COUIFullPageStatement (coui_full_page_statement.xml): a centered title, a scrollable statement body with vertical fading edges, and a bottom area holding a filled primary button plus an optional borderless exit text button. Typically used as the first-launch privacy / user statement page.

Link copied to clipboard
fun HorizontalDivider(modifier: Modifier = Modifier, thickness: Dp = DividerDefaults.Thickness, color: Color = DividerDefaults.DividerColor)

A divider is a thin line that groups content in lists and layouts.

Link copied to clipboard
fun HorizontalScrollBar(adapter: ScrollBarAdapter, modifier: Modifier = Modifier, reverseLayout: Boolean = false, trackPadding: PaddingValues = PaddingValues(0.dp), colors: ScrollBarColors = ScrollBarDefaults.scrollBarColors(), thumbWidth: Dp = ScrollBarDefaults.ThumbWidth, cornerRadius: Dp = ScrollBarDefaults.CornerRadius, thumbMinLength: Dp = ScrollBarDefaults.ThumbMinLength, endPadding: Dp = ScrollBarDefaults.EndPadding)

A horizontal scrollbar.

Link copied to clipboard
fun HsvAlphaSlider(currentHue: Float, currentSaturation: Float, currentValue: Float, currentAlpha: Float, onAlphaChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A HsvAlphaSlider component for selecting the alpha of a color.

Link copied to clipboard
fun HsvColorPicker(color: Color, onColorChanged: (Color) -> Unit, modifier: Modifier = Modifier, showPreview: Boolean = true, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A HsvColorPicker component with COUI style using HSV color space.

Link copied to clipboard
fun HsvHueSlider(currentHue: Float, onHueChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A HsvHueSlider component for selecting the hue of a color using pure HSV colors.

Link copied to clipboard
fun HsvSaturationSlider(currentHue: Float, currentSaturation: Float, onSaturationChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A HsvSaturationSlider component for selecting the saturation of a color.

Link copied to clipboard
fun HsvValueSlider(currentHue: Float, currentSaturation: Float, currentValue: Float, onValueChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A HsvValueSlider component for selecting the value/brightness of a color.

Link copied to clipboard
fun Icon(bitmap: ImageBitmap, contentDescription: String?, modifier: Modifier = Modifier, tint: Color = LocalContentColor.current)
fun Icon(painter: Painter, tint: ColorProducer?, contentDescription: String?, modifier: Modifier = Modifier)
fun Icon(painter: Painter, contentDescription: String?, modifier: Modifier = Modifier, tint: Color = LocalContentColor.current)
fun Icon(imageVector: ImageVector, contentDescription: String?, modifier: Modifier = Modifier, tint: Color = LocalContentColor.current)

A Icon component with COUI style.

Link copied to clipboard
fun IconButton(onClick: () -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, holdDownState: Boolean = false, backgroundColor: Color = Color.Unspecified, cornerRadius: Dp = IconButtonDefaults.CornerRadius, minHeight: Dp = IconButtonDefaults.MinHeight, minWidth: Dp = IconButtonDefaults.MinWidth, content: @Composable () -> Unit)

A IconButton component with COUI style.

Link copied to clipboard
fun InfiniteProgressIndicator(modifier: Modifier = Modifier, color: Color = COUITheme.colorScheme.primary, size: Dp = ProgressIndicatorDefaults.DefaultInfiniteProgressIndicatorSize, strokeWidth: Dp = ProgressIndicatorDefaults.DefaultInfiniteProgressIndicatorStrokeWidth)

A InfiniteProgressIndicator with COUI style.

Link copied to clipboard
fun InputField(query: String, onQueryChange: (String) -> Unit, onSearch: (String) -> Unit, expanded: Boolean, onExpandedChange: (Boolean) -> Unit, modifier: Modifier = Modifier, label: String = "", enabled: Boolean = true, textStyle: TextStyle? = null, colors: SearchBarColors = SearchBarDefaults.searchBarColors(), leadingIcon: @Composable () -> Unit? = null, trailingIcon: @Composable () -> Unit? = null, interactionSource: MutableInteractionSource? = null)

A text field to input a query in a search bar with COUI style.

Link copied to clipboard
fun InputView(value: String, onValueChange: (String) -> Unit, modifier: Modifier = Modifier, title: String = "", label: String = "", enabled: Boolean = true, readOnly: Boolean = false, showCount: Boolean = false, maxCount: Int = 0, showClearButton: Boolean = false, showPasswordToggle: Boolean = false, errorMessage: String = "", cornerRadius: Dp = InputViewDefaults.CornerRadius, colors: InputViewColors = InputViewDefaults.inputViewColors(), textFieldColors: TextFieldColors = TextFieldDefaults.textFieldColors(), textStyle: TextStyle = TextFieldDefaults.textStyle(TextFieldMode.None), keyboardOptions: KeyboardOptions = KeyboardOptions.Default, keyboardActions: KeyboardActions = KeyboardActions.Default, singleLine: Boolean = true, maxLines: Int = if (singleLine) 1 else InputViewDefaults.MaxLines, visualTransformation: VisualTransformation = VisualTransformation.None, leadingIcon: @Composable () -> Unit? = null, trailingIcon: @Composable () -> Unit? = null, interactionSource: MutableInteractionSource? = null)

An InputView component with COUI style — the ColorOS Settings "card input".

Link copied to clipboard
fun List<BreadcrumbItem>.joinToPath(separator: String = "/"): String

Joins the path segments of all BreadcrumbItems in this list into a single path string using the given separator.

Link copied to clipboard
fun LinearProgressIndicator(modifier: Modifier = Modifier, progress: Float? = null, colors: ProgressIndicatorColors = ProgressIndicatorDefaults.progressIndicatorColors(), height: Dp = ProgressIndicatorDefaults.DefaultLinearProgressIndicatorHeight)

A LinearProgressIndicator with COUI style.

Link copied to clipboard

A column that automatically aligns the width to the widest item.

Link copied to clipboard
fun ListPopupContent(popupContentSize: IntSize, onPopupContentSizeChange: (IntSize) -> Unit, fractionProgress: () -> Float, alphaProgress: () -> Float, popupLayoutPosition: PopupLayoutPosition, localTransformOrigin: TransformOrigin, modifier: Modifier = Modifier, content: @Composable () -> Unit)

The scaling and fading container that hosts a list popup's content.

Link copied to clipboard
fun LoadingButton(text: String, onClick: () -> Unit, modifier: Modifier = Modifier, isLoading: Boolean = false, loadingText: String? = null, enabled: Boolean = true, cornerRadius: Dp = ButtonDefaults.CornerRadius, minWidth: Dp = ButtonDefaults.MinWidth, minHeight: Dp = ButtonDefaults.MinHeight, colors: TextButtonColors = ButtonDefaults.textButtonColors(), insideMargin: PaddingValues = ButtonDefaults.InsideMargin, interactionSource: MutableInteractionSource? = null, indication: Indication? = null)

A LoadingButton component with COUI style.

Link copied to clipboard
fun NavigationBar(modifier: Modifier = Modifier, color: Color = COUITheme.colorScheme.background, showDivider: Boolean = true, defaultWindowInsetsPadding: Boolean = true, mode: NavigationBarDisplayMode = NavigationBarDisplayMode.IconAndText, content: @Composable RowScope.() -> Unit)

A NavigationBar that with 2 to 5 items.

Link copied to clipboard
fun RowScope.NavigationBarItem(selected: Boolean, onClick: () -> Unit, icon: ImageVector, label: String, modifier: Modifier = Modifier, enabled: Boolean = true)

A NavigationBarItem that is suitable for NavigationBar.

Link copied to clipboard
fun NavigationRail(modifier: Modifier = Modifier, header: @Composable ColumnScope.() -> Unit? = null, color: Color = COUITheme.colorScheme.surface, showDivider: Boolean = true, defaultWindowInsetsPadding: Boolean = true, minWidth: Dp = NavigationRailDefaults.MinWidth, mode: NavigationRailDisplayMode = NavigationRailDisplayMode.IconAndText, content: @Composable ColumnScope.() -> Unit)

A NavigationRail that is suitable for wide screens.

Link copied to clipboard
fun NavigationRailItem(selected: Boolean, onClick: () -> Unit, icon: ImageVector, label: String, modifier: Modifier = Modifier, enabled: Boolean = true)

A NavigationRailItem that is suitable for NavigationRail.

Link copied to clipboard
fun NumberPicker(value: Int, onValueChange: (Int) -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, range: IntRange = 0..10, label: (Int) -> String = { it.toString() }, visibleItemCount: Int = 3, wrapAround: Boolean = false, colors: NumberPickerColors = NumberPickerDefaults.colors(), textStyle: TextStyle = COUITheme.textStyles.title3, itemHeight: Dp = NumberPickerDefaults.ItemHeight)

A NumberPicker component with COUI style.

Link copied to clipboard
fun OkHsvAlphaSlider(currentH: Float, currentS: Float, currentV: Float, currentAlpha: Float, onAlphaChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A OkHsvAlphaSlider component for selecting the alpha of a color using OkHSV.

Link copied to clipboard
fun OkHsvColorPicker(color: Color, onColorChanged: (Color) -> Unit, modifier: Modifier = Modifier, showPreview: Boolean = true, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A OkHsvColorPicker component with COUI style using OkHSV color space based on OkLab. OkHSV provides better perceptual uniformity than traditional HSV.

Link copied to clipboard
fun OkHsvHueSlider(currentH: Float, onHueChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A OkHsvHueSlider component for selecting the hue of a color using OkHSV color space.

Link copied to clipboard
fun OkHsvSaturationSlider(currentH: Float, currentS: Float, onSaturationChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A OkHsvSaturationSlider component for selecting the saturation of a color using OkHSV.

Link copied to clipboard
fun OkHsvValueSlider(currentH: Float, currentS: Float, currentV: Float, onValueChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A OkHsvValueSlider component for selecting the value/brightness of a color using OkHSV.

Link copied to clipboard
fun OkLabAChannelSlider(currentL: Float, currentA: Float, currentB: Float, onAChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A OkLabAChannelSlider component for selecting the A channel (green-red axis) of a color in OkLab space.

Link copied to clipboard
fun OkLabAlphaSlider(currentL: Float, currentA: Float, currentB: Float, currentAlpha: Float, onAlphaChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A OkLabAlphaSlider component for selecting the alpha of a color in OkLab space.

Link copied to clipboard
fun OkLabBChannelSlider(currentL: Float, currentA: Float, currentB: Float, onBChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A OkLabBChannelSlider component for selecting the B channel (blue-yellow axis) of a color in OkLab space.

Link copied to clipboard
fun OkLabColorPicker(color: Color, onColorChanged: (Color) -> Unit, modifier: Modifier = Modifier, showPreview: Boolean = true, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A OkLabColorPicker component with COUI style using OkLab color space.

Link copied to clipboard
fun OkLabLightnessSlider(currentL: Float, currentA: Float, currentB: Float, onLightnessChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A OkLabLightnessSlider component for selecting the lightness (L) of a color in OkLab space.

Link copied to clipboard
fun OkLchAlphaSlider(currentL: Float, currentC: Float, currentH: Float, currentAlpha: Float, onAlphaChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)
Link copied to clipboard
fun OkLchChromaSlider(currentL: Float, currentC: Float, currentH: Float, onChromaChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)
Link copied to clipboard
fun OkLchColorPicker(color: Color, onColorChanged: (Color) -> Unit, modifier: Modifier = Modifier, showPreview: Boolean = true, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)

A OkLchColorPicker component with COUI style using OkLch color space.

Link copied to clipboard
fun OkLchHueSlider(currentL: Float, currentC: Float, currentH: Float, onHueChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)
Link copied to clipboard
fun OkLchLightnessSlider(currentL: Float, currentC: Float, currentH: Float, onLightnessChanged: (Float) -> Unit, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect)
Link copied to clipboard
fun TooltipScope.PlainTooltip(modifier: Modifier = Modifier, caretShape: Shape? = null, maxWidth: Dp = TooltipDefaults.PlainTooltipMaxWidth, cornerRadius: Dp = TooltipDefaults.PlainTooltipCornerRadius, containerColor: Color = TooltipDefaults.plainTooltipContainerColor, contentColor: Color = TooltipDefaults.plainTooltipContentColor, insideMargin: PaddingValues = TooltipDefaults.PlainTooltipInsideMargin, content: @Composable () -> Unit)

A plain tooltip that briefly describes an anchor with a short text label, using the Miuix inverse surface style.

Link copied to clipboard

Records the DOWN position of each touch into state, mirroring COUI PreciseClickHelper's OnTouchListener. Attach to the anchor of a popup that was given the same PreciseClickState so the popup opens at the finger.

Link copied to clipboard
fun PullToRefresh(isRefreshing: Boolean, onRefresh: () -> Unit, modifier: Modifier = Modifier, pullToRefreshState: PullToRefreshState = rememberPullToRefreshState(), contentPadding: PaddingValues = PaddingValues(0.dp), topAppBarScrollBehavior: ScrollBehavior? = null, color: Color = PullToRefreshDefaults.color, circleSize: Dp = PullToRefreshDefaults.circleSize, refreshTexts: List<String> = PullToRefreshDefaults.refreshTexts, refreshTextStyle: TextStyle = PullToRefreshDefaults.refreshTextStyle, content: @Composable () -> Unit)

A container that supports the "pull-to-refresh" gesture.

Link copied to clipboard
fun RadioButton(selected: Boolean, onClick: () -> Unit?, modifier: Modifier = Modifier, colors: RadioButtonColors = RadioButtonDefaults.radioButtonColors(), enabled: Boolean = true)

A RadioButton component with COUI style.

Link copied to clipboard
fun RangeSlider(value: ClosedFloatingPointRange<Float>, onValueChange: (ClosedFloatingPointRange<Float>) -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, valueRange: ClosedFloatingPointRange<Float> = 0f..1f, @IntRange(from = 0) steps: Int = 0, onValueChangeFinished: () -> Unit? = null, height: Dp = SliderDefaults.MinHeight, colors: SliderColors = SliderDefaults.sliderColors(), hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect, showKeyPoints: Boolean = false, keyPoints: List<Float>? = null, magnetThreshold: Float = 0.02f)

A RangeSlider component with COUI style.

Link copied to clipboard
fun rememberListPopupLayoutInfo(alignment: PopupPositionProvider.Align, popupPositionProvider: PopupPositionProvider, parentBounds: IntRect, popupContentSize: IntSize): ListPopupLayoutInfo

Computes and remembers the ListPopupLayoutInfo for a list popup from its anchor and content size.

Link copied to clipboard

Creates and remembers a PreciseClickState for a point-anchored popup.

Link copied to clipboard

Creates and remembers a PullToRefreshState across recompositions.

Link copied to clipboard
fun rememberTooltipState(initialIsVisible: Boolean = false, isPersistent: Boolean = false, mutatorMutex: MutatorMutex = BasicTooltipDefaults.GlobalMutatorMutex): TooltipState

Creates and remembers a TooltipState.

Link copied to clipboard
fun rememberTopAppBarState(initialHeightOffsetLimit: Float = -Float.MAX_VALUE, initialHeightOffset: Float = 0.0f, initialContentOffset: Float = 0.0f): TopAppBarState

Creates a TopAppBarState that is remembered across compositions.

Link copied to clipboard
fun TooltipScope.RichTooltip(modifier: Modifier = Modifier, title: @Composable () -> Unit? = null, action: @Composable () -> Unit? = null, caretShape: Shape? = null, maxWidth: Dp = TooltipDefaults.RichTooltipMaxWidth, cornerRadius: Dp = TooltipDefaults.RichTooltipCornerRadius, colors: RichTooltipColors = TooltipDefaults.richTooltipColors(), insideMargin: PaddingValues = TooltipDefaults.RichTooltipInsideMargin, text: @Composable () -> Unit)

A rich tooltip that explains an anchor with an optional title, body text, and an optional action, using the Miuix surface-container card style.

Link copied to clipboard
fun RichTooltipBox(text: String, modifier: Modifier = Modifier, state: TooltipState = rememberTooltipState(isPersistent = true), title: String? = null, actionText: String? = null, onActionClick: () -> Unit? = null, enabled: Boolean = true, positioning: TooltipAnchorPosition = TooltipAnchorPosition.Below, colors: RichTooltipColors = TooltipDefaults.richTooltipColors(), content: @Composable () -> Unit)

A rich tooltip convenience that wraps TooltipBox + RichTooltip with an optional title and a single text action. The action invokes onActionClick then dismisses the tooltip.

Link copied to clipboard
fun RotatingProgressIndicator(modifier: Modifier = Modifier, color: Color = COUITheme.colorScheme.onSurfaceContainer, size: Dp = ProgressIndicatorDefaults.DefaultRotatingProgressIndicatorSize, ringDiameter: Dp = ProgressIndicatorDefaults.DefaultRotatingProgressIndicatorRingDiameter, strokeWidth: Dp = ProgressIndicatorDefaults.DefaultRotatingProgressIndicatorStrokeWidth)

A RotatingProgressIndicator with COUI style.

Link copied to clipboard
fun Scaffold(modifier: Modifier = Modifier, topBar: @Composable () -> Unit = {}, bottomBar: @Composable () -> Unit = {}, floatingActionButton: @Composable () -> Unit = {}, floatingActionButtonPosition: FabPosition = FabPosition.End, floatingToolbar: @Composable () -> Unit = {}, floatingToolbarPosition: ToolbarPosition = ToolbarPosition.BottomCenter, snackbarHost: @Composable () -> Unit = {}, popupHost: @Composable () -> Unit = { COUIPopupHost() }, containerColor: Color = COUITheme.colorScheme.surface, contentWindowInsets: WindowInsets = WindowInsets.systemBars.union(WindowInsets.displayCutout), content: @Composable (PaddingValues) -> Unit)

A Scaffold component with COUI style.

Link copied to clipboard
fun SearchBar(inputField: @Composable () -> Unit, onExpandedChange: (Boolean) -> Unit, modifier: Modifier = Modifier, insideMargin: DpSize = SearchBarDefaults.InsideMargin, expanded: Boolean = false, outsideEndAction: @Composable () -> Unit? = null, content: @Composable ColumnScope.() -> Unit)

A SearchBar component with COUI style.

Link copied to clipboard
fun Slider(value: Float, onValueChange: (Float) -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, valueRange: ClosedFloatingPointRange<Float> = 0f..1f, @IntRange(from = 0) steps: Int = 0, onValueChangeFinished: () -> Unit? = null, reverseDirection: Boolean = false, height: Dp = SliderDefaults.MinHeight, colors: SliderColors = SliderDefaults.sliderColors(), hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect, showKeyPoints: Boolean = false, keyPoints: List<Float>? = null, magnetThreshold: Float = 0.02f)

A Slider component with COUI style.

Link copied to clipboard
fun SmallTitle(text: String, modifier: Modifier = Modifier, textColor: Color = COUITheme.colorScheme.onBackgroundVariant, insideMargin: PaddingValues = SmallTitleDefaults.InsideMargin)

A SmallTitle with COUI style.

Link copied to clipboard
fun SmallTopAppBar(title: String, modifier: Modifier = Modifier, color: Color = COUITheme.colorScheme.surface, titleColor: Color = COUITheme.colorScheme.onSurface, subtitle: String = "", subtitleColor: Color = COUITheme.colorScheme.onSurfaceVariantSummary, dividerColor: Color = COUITheme.colorScheme.dividerLine, navigationIcon: @Composable () -> Unit = {}, actions: @Composable RowScope.() -> Unit = {}, scrollBehavior: ScrollBehavior? = null, defaultWindowInsetsPadding: Boolean = true, showDivider: Boolean = true, titlePadding: Dp = TopAppBarDefaults.TitlePadding, navigationIconPadding: Dp = TopAppBarDefaults.NavigationIconPadding, actionIconPadding: Dp = TopAppBarDefaults.ActionIconPadding, bottomContent: @Composable () -> Unit = {})

A SmallTopAppBar with COUI style.

Link copied to clipboard
fun Snackbar(data: SnackbarData, modifier: Modifier = Modifier, icon: @Composable () -> Unit? = null, cornerRadius: Dp = SnackbarDefaults.CornerRadius, singleLineCornerRadius: Dp = SnackbarDefaults.SingleLineCornerRadius, colors: SnackbarColors = SnackbarDefaults.snackbarColors(), insideMargin: PaddingValues = SnackbarDefaults.InsideMargin)

A Snackbar is a temporary message that appears at the bottom of the screen.

Link copied to clipboard
fun SnackbarHost(state: SnackbarHostState, modifier: Modifier = Modifier, canSwipeToDismiss: Boolean = true, content: @Composable (SnackbarData) -> Unit = { Snackbar(it) })

Host for Snackbars to be shown.

Link copied to clipboard
fun SpinnerItemImpl(entry: DropdownItem, entryCount: Int, isSelected: Boolean, index: Int, spinnerColors: DropdownColors, dialogMode: Boolean = false, onSelectedIndexChange: (Int) -> Unit)

The implementation of the spinner.

Link copied to clipboard
fun Stepper(value: Int, onValueChange: (Int) -> Unit, modifier: Modifier = Modifier, minValue: Int = Int.MIN_VALUE, maxValue: Int = Int.MAX_VALUE, step: Int = 1, enabled: Boolean = true, colors: StepperColors = StepperDefaults.stepperColors())

A Stepper component with COUI style.

Link copied to clipboard
fun Surface(modifier: Modifier = Modifier, shape: Shape = SurfaceDefaults.Shape, color: Color = COUITheme.colorScheme.surface, contentColor: Color = COUITheme.colorScheme.onSurface, border: BorderStroke? = null, shadowElevation: Dp = SurfaceDefaults.ShadowElevation, content: @Composable () -> Unit)
fun Surface(onClick: () -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, shape: Shape = SurfaceDefaults.Shape, color: Color = COUITheme.colorScheme.surface, contentColor: Color = COUITheme.colorScheme.onSurface, border: BorderStroke? = null, shadowElevation: Dp = SurfaceDefaults.ShadowElevation, interactionSource: MutableInteractionSource? = null, indication: Indication? = LocalIndication.current, content: @Composable () -> Unit)

A Surface component with COUI style.

Link copied to clipboard
fun Switch(checked: Boolean, onCheckedChange: (Boolean) -> Unit?, modifier: Modifier = Modifier, colors: SwitchColors = SwitchDefaults.switchColors(), enabled: Boolean = true, isLoading: Boolean = false)

A Switch component with COUI style.

Link copied to clipboard
fun TabRow(tabs: List<String>, selectedTabIndex: Int, onTabSelected: (Int) -> Unit, modifier: Modifier = Modifier, colors: TabRowColors = TabRowDefaults.tabRowColors(backgroundColor = Color.Transparent), minWidth: Dp = TabRowDefaults.TabRowMinWidth, maxWidth: Dp = TabRowDefaults.TabRowMaxWidth, height: Dp = TabRowDefaults.TabRowHeight, cornerRadius: Dp = TabRowDefaults.TabRowCornerRadius, itemSpacing: Dp = 0.dp, contentAlignment: Alignment = Alignment.Center, listState: LazyListState? = null, interactionSource: MutableInteractionSource? = null, indication: Indication? = null)

A TabRow with COUI style, without the container capsule.

Link copied to clipboard
fun TabRowWithContour(tabs: List<String>, selectedTabIndex: Int, onTabSelected: (Int) -> Unit, modifier: Modifier = Modifier, colors: TabRowColors = TabRowDefaults.tabRowColors(), minWidth: Dp = TabRowDefaults.TabRowWithContourMinWidth, maxWidth: Dp = TabRowDefaults.TabRowWithContourMaxWidth, height: Dp = TabRowDefaults.TabRowWithContourHeight, cornerRadius: Dp = TabRowDefaults.TabRowWithContourCornerRadius, contourPadding: Dp = TabRowDefaults.TabRowWithContourPadding, itemSpacing: Dp = 0.dp, contentAlignment: Alignment = Alignment.Center, listState: LazyListState? = null, interactionSource: MutableInteractionSource? = null, indication: Indication? = null)

A TabRowWithContour with COUI style.

Link copied to clipboard
fun Text(text: String, modifier: Modifier = Modifier, color: Color = Color.Unspecified, autoSize: TextAutoSize? = null, fontSize: TextUnit = TextUnit.Unspecified, fontStyle: FontStyle? = null, fontWeight: FontWeight? = null, fontFamily: FontFamily? = null, letterSpacing: TextUnit = TextUnit.Unspecified, textDecoration: TextDecoration? = null, textAlign: TextAlign? = null, lineHeight: TextUnit = TextUnit.Unspecified, overflow: TextOverflow = TextOverflow.Clip, softWrap: Boolean = true, maxLines: Int = Int.MAX_VALUE, minLines: Int = 1, onTextLayout: (TextLayoutResult) -> Unit? = null, style: TextStyle = LocalTextStyles.current.main)
fun Text(text: String, color: ColorProducer, modifier: Modifier = Modifier, autoSize: TextAutoSize? = null, fontSize: TextUnit = TextUnit.Unspecified, fontStyle: FontStyle? = null, fontWeight: FontWeight? = null, fontFamily: FontFamily? = null, letterSpacing: TextUnit = TextUnit.Unspecified, textDecoration: TextDecoration? = null, textAlign: TextAlign? = null, lineHeight: TextUnit = TextUnit.Unspecified, overflow: TextOverflow = TextOverflow.Clip, softWrap: Boolean = true, maxLines: Int = Int.MAX_VALUE, minLines: Int = 1, onTextLayout: (TextLayoutResult) -> Unit? = null, style: TextStyle = LocalTextStyles.current.main)
fun Text(text: AnnotatedString, modifier: Modifier = Modifier, color: Color = Color.Unspecified, autoSize: TextAutoSize? = null, fontSize: TextUnit = TextUnit.Unspecified, fontStyle: FontStyle? = null, fontWeight: FontWeight? = null, fontFamily: FontFamily? = null, letterSpacing: TextUnit = TextUnit.Unspecified, textDecoration: TextDecoration? = null, textAlign: TextAlign? = null, lineHeight: TextUnit = TextUnit.Unspecified, overflow: TextOverflow = TextOverflow.Clip, softWrap: Boolean = true, maxLines: Int = Int.MAX_VALUE, minLines: Int = 1, inlineContent: Map<String, InlineTextContent> = mapOf(), onTextLayout: (TextLayoutResult) -> Unit = {}, style: TextStyle = LocalTextStyles.current.main)
fun Text(text: AnnotatedString, color: ColorProducer, modifier: Modifier = Modifier, autoSize: TextAutoSize? = null, fontSize: TextUnit = TextUnit.Unspecified, fontStyle: FontStyle? = null, fontWeight: FontWeight? = null, fontFamily: FontFamily? = null, letterSpacing: TextUnit = TextUnit.Unspecified, textDecoration: TextDecoration? = null, textAlign: TextAlign? = null, lineHeight: TextUnit = TextUnit.Unspecified, overflow: TextOverflow = TextOverflow.Clip, softWrap: Boolean = true, maxLines: Int = Int.MAX_VALUE, minLines: Int = 1, inlineContent: Map<String, InlineTextContent> = mapOf(), onTextLayout: (TextLayoutResult) -> Unit = {}, style: TextStyle = LocalTextStyles.current.main)

A Text component with COUI style.

Link copied to clipboard
fun TextButton(text: String, onClick: () -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, pressScaleEnabled: Boolean = true, cornerRadius: Dp = ButtonDefaults.CornerRadius, minWidth: Dp = ButtonDefaults.MinWidth, minHeight: Dp = ButtonDefaults.MinHeight, colors: TextButtonColors = ButtonDefaults.textButtonColors(), insideMargin: PaddingValues = ButtonDefaults.InsideMargin, textStyle: TextStyle = COUITheme.textStyles.button, interactionSource: MutableInteractionSource? = null, indication: Indication? = null)

A TextButton component with COUI style.

Link copied to clipboard
fun TextField(state: TextFieldState, modifier: Modifier = Modifier, backgroundMode: TextFieldMode = TextFieldMode.Line, insideMargin: DpSize = TextFieldDefaults.insideMargin(backgroundMode), colors: TextFieldColors = TextFieldDefaults.textFieldColors(), cornerRadius: Dp = TextFieldDefaults.CornerRadius, label: String = "", useLabelAsPlaceholder: Boolean = true, justShowFocusLine: Boolean = false, enabled: Boolean = true, readOnly: Boolean = false, isError: Boolean = false, maxCount: Int? = null, showClearButton: Boolean = false, showPasswordToggle: Boolean = false, inputTransformation: InputTransformation? = null, textStyle: TextStyle = TextFieldDefaults.textStyle(backgroundMode), keyboardOptions: KeyboardOptions = KeyboardOptions.Default, onKeyboardAction: KeyboardActionHandler? = null, lineLimits: TextFieldLineLimits = TextFieldLineLimits.Default, leadingIcon: @Composable () -> Unit? = null, trailingIcon: @Composable () -> Unit? = null, onTextLayout: Density.(getResult: () -> TextLayoutResult?) -> Unit? = null, interactionSource: MutableInteractionSource? = null, cursorBrush: Brush = SolidColor(colors.borderColor), outputTransformation: OutputTransformation? = null, scrollState: ScrollState = rememberScrollState())
fun TextField(value: TextFieldValue, onValueChange: (TextFieldValue) -> Unit, modifier: Modifier = Modifier, backgroundMode: TextFieldMode = TextFieldMode.Line, insideMargin: DpSize = TextFieldDefaults.insideMargin(backgroundMode), colors: TextFieldColors = TextFieldDefaults.textFieldColors(), cornerRadius: Dp = TextFieldDefaults.CornerRadius, label: String = "", useLabelAsPlaceholder: Boolean = true, justShowFocusLine: Boolean = false, enabled: Boolean = true, readOnly: Boolean = false, isError: Boolean = false, maxCount: Int? = null, showClearButton: Boolean = false, showPasswordToggle: Boolean = false, textStyle: TextStyle = TextFieldDefaults.textStyle(backgroundMode), keyboardOptions: KeyboardOptions = KeyboardOptions.Default, keyboardActions: KeyboardActions = KeyboardActions.Default, leadingIcon: @Composable () -> Unit? = null, trailingIcon: @Composable () -> Unit? = null, singleLine: Boolean = false, maxLines: Int = if (singleLine) 1 else Int.MAX_VALUE, minLines: Int = 1, visualTransformation: VisualTransformation = VisualTransformation.None, onTextLayout: (TextLayoutResult) -> Unit = {}, interactionSource: MutableInteractionSource? = null, cursorBrush: Brush = SolidColor(colors.borderColor))

A TextField component with COUI style.

fun TextField(value: String, onValueChange: (String) -> Unit, modifier: Modifier = Modifier, backgroundMode: TextFieldMode = TextFieldMode.Line, insideMargin: DpSize = TextFieldDefaults.insideMargin(backgroundMode), colors: TextFieldColors = TextFieldDefaults.textFieldColors(), cornerRadius: Dp = TextFieldDefaults.CornerRadius, label: String = "", useLabelAsPlaceholder: Boolean = true, justShowFocusLine: Boolean = false, enabled: Boolean = true, readOnly: Boolean = false, isError: Boolean = false, maxCount: Int? = null, showClearButton: Boolean = false, showPasswordToggle: Boolean = false, textStyle: TextStyle = TextFieldDefaults.textStyle(backgroundMode), keyboardOptions: KeyboardOptions = KeyboardOptions.Default, keyboardActions: KeyboardActions = KeyboardActions.Default, leadingIcon: @Composable () -> Unit? = null, trailingIcon: @Composable () -> Unit? = null, singleLine: Boolean = false, maxLines: Int = if (singleLine) 1 else Int.MAX_VALUE, minLines: Int = 1, visualTransformation: VisualTransformation = VisualTransformation.None, onTextLayout: (TextLayoutResult) -> Unit = {}, interactionSource: MutableInteractionSource? = null, cursorBrush: Brush = SolidColor(colors.borderColor))

A text field component with COUI style.

Link copied to clipboard
fun TimePicker(value: TimeValue, onValueChange: (TimeValue) -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, is24Hour: Boolean = true, amPmFirst: Boolean = false, amLabel: String = TimePickerDefaults.AmLabel, pmLabel: String = TimePickerDefaults.PmLabel, hourUnit: String = TimePickerDefaults.HourUnit, minuteUnit: String = TimePickerDefaults.MinuteUnit, hourColumnWidth: Dp = TimePickerDefaults.HourColumnWidth, minuteColumnWidth: Dp = TimePickerDefaults.MinuteColumnWidth, amPmColumnWidth: Dp = TimePickerDefaults.AmPmColumnWidth, colors: NumberPickerColors = NumberPickerDefaults.colors(), textStyle: TextStyle = COUITheme.textStyles.title3, itemHeight: Dp = NumberPickerDefaults.ItemHeight, insideMargin: PaddingValues = TimePickerDefaults.InsideMargin)

A TimePicker component with COUI style.

Link copied to clipboard
fun TooltipBox(positionProvider: PopupPositionProvider, tooltip: @Composable TooltipScope.() -> Unit, state: TooltipState, modifier: Modifier = Modifier, focusable: Boolean = false, enableUserInput: Boolean = true, content: @Composable () -> Unit)

A tooltip box that anchors a tooltip (a PlainTooltip or RichTooltip) to its content.

fun TooltipBox(text: String, modifier: Modifier = Modifier, state: TooltipState = rememberTooltipState(isPersistent = false), enabled: Boolean = true, positioning: TooltipAnchorPosition = TooltipAnchorPosition.Below, containerColor: Color = TooltipDefaults.plainTooltipContainerColor, contentColor: Color = TooltipDefaults.plainTooltipContentColor, content: @Composable () -> Unit)

A plain tooltip convenience that wraps TooltipBox + PlainTooltip for a short text label.

Link copied to clipboard
fun TopAppBar(title: String, modifier: Modifier = Modifier, color: Color = COUITheme.colorScheme.surface, titleColor: Color = COUITheme.colorScheme.onSurface, largeTitle: String = title, largeTitleColor: Color = COUITheme.colorScheme.onSurface, subtitle: String = "", subtitleColor: Color = COUITheme.colorScheme.onSurfaceVariantSummary, dividerColor: Color = COUITheme.colorScheme.dividerLine, navigationIcon: @Composable () -> Unit = {}, actions: @Composable RowScope.() -> Unit = {}, scrollBehavior: ScrollBehavior? = null, defaultWindowInsetsPadding: Boolean = true, showDivider: Boolean = true, hideSubtitleOnCollapse: Boolean = true, titlePadding: Dp = TopAppBarDefaults.TitlePadding, navigationIconPadding: Dp = TopAppBarDefaults.NavigationIconPadding, actionIconPadding: Dp = TopAppBarDefaults.ActionIconPadding, bottomContent: @Composable () -> Unit = {})

A TopAppBar with COUI style that can collapse and expand based on the scroll position of the content below it.

Link copied to clipboard
fun TopTips(text: String, modifier: Modifier = Modifier, visible: Boolean = true, startIcon: @Composable () -> Unit? = null, actionText: String? = null, onAction: () -> Unit? = null, onClose: () -> Unit? = null, cornerRadius: Dp = TopTipsDefaults.CornerRadius, colors: TopTipsColors = TopTipsDefaults.topTipsColors())

A TopTips component with COUI style.

Link copied to clipboard
fun VerticalDivider(modifier: Modifier = Modifier, thickness: Dp = DividerDefaults.Thickness, color: Color = DividerDefaults.DividerColor)

A divider is a thin line that groups content in lists and layouts.

Link copied to clipboard
fun VerticalScrollBar(adapter: ScrollBarAdapter, modifier: Modifier = Modifier, reverseLayout: Boolean = false, trackPadding: PaddingValues = PaddingValues(0.dp), colors: ScrollBarColors = ScrollBarDefaults.scrollBarColors(), thumbWidth: Dp = ScrollBarDefaults.ThumbWidth, cornerRadius: Dp = ScrollBarDefaults.CornerRadius, thumbMinLength: Dp = ScrollBarDefaults.ThumbMinLength, endPadding: Dp = ScrollBarDefaults.EndPadding)

A vertical scrollbar.

Link copied to clipboard
fun VerticalSlider(value: Float, onValueChange: (Float) -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, valueRange: ClosedFloatingPointRange<Float> = 0f..1f, @IntRange(from = 0) steps: Int = 0, onValueChangeFinished: () -> Unit? = null, reverseDirection: Boolean = false, width: Dp = SliderDefaults.MinHeight, colors: SliderColors = SliderDefaults.sliderColors(), effect: Boolean = false, hapticEffect: SliderDefaults.SliderHapticEffect = SliderDefaults.DefaultHapticEffect, showKeyPoints: Boolean = false, keyPoints: List<Float>? = null, magnetThreshold: Float = 0.02f)

A vertical Slider component with COUI style.