Package-level declarations
Types
Contains default values used for AlertDialog and BasicAlertDialog.
DSL scope for building the content of an AppBarColumn.
State class for the overflow menu in AppBarRow and AppBarColumn.
DSL scope for building the content of an AppBarRow.
DSL scope for building the content of an AppBarRow and AppBarColumn.
Represents the colors used by an AppBarWithSearch.
Contains the baseline values used by AssistChip.
Default values used for Badge implementations.
Interface that allows libraries to override the behavior of the BasicAlertDialog component.
Parameters available to BasicAlertDialog.
Contains default values used for the bottom app bar implementations.
A BottomAppBarScrollBehavior defines how a bottom app bar should behave when the content under it is scrolled.
A state object that can be hoisted to control and observe the bottom app bar state. The state is read and updated by a BottomAppBarScrollBehavior implementation.
Contains the default values used by ModalBottomSheet and BottomSheetScaffold.
State of the BottomSheetScaffold composable.
Represents the container and content colors used in a button in different states.
Contains the default values used by all 5 button types.
Represents the elevation for a button in different states.
Default values used by ButtonGroup
State class for the overflow menu in ButtonGroup.
Button group scope used to indicate a Modifier.weight and Modifier.animateWidth of a child element. Also defines the DSL to build the content of a ButtonGroup
The shapes that will be used in buttons. Button will morph between these shapes depending on the interaction of the button, assuming all of the shapes are CornerBasedShapes.
Represents a Locale for the calendar. This locale will be used when formatting dates, determining the input format, and more.
Represents the container and content colors used in a card in different states.
Contains the default values used by all card types.
Represents the elevation for a card in different states.
Represents the colors used by the three different sections (checkmark, box, and border) of a Checkbox or TriStateCheckbox in different states.
Defaults used in Checkbox and TriStateCheckbox.
Represents the border stroke used in a chip in different states.
Represents the container and content colors used in a clickable chip in different states.
Represents the elevation used in a selectable chip in different states.
A color scheme holds all the named color parameters for a MaterialTheme.
Represents the colors used by the date picker.
Contains default values used by the DatePicker.
A date formatter interface used by DatePicker.
A state object that can be hoisted to observe the date picker state. See rememberDatePickerState.
Contains default values used by the DateRangePicker.
A state object that can be hoisted to observe the date range picker state. See rememberDateRangePickerState.
This override provides the default behavior of the BasicAlertDialog component.
Provides the default behavior of the HorizontalFloatingToolbar component. This implementation is used when no override is specified.
Provides the default behavior of the HorizontalFloatingToolbar component that includes a Floating Action Button. This implementation is used when no override is specified.
This override provides the default behavior of the ModalWideNavigationRail component.
This override provides the default behavior of the NavigationBar component.
This override provides the default behavior of the NavigationRail component.
This override provides the default behavior of the ShortNavigationBar component.
Provides the default behavior of the SingleRowTopAppBar component. This implementation is used when no override is specified.
Default Shape of the caret used by tooltips.
Provides the default behavior of the TwoRowsTopAppBar component. This implementation is used when no override is specified.
This override provides the default behavior of the VerticalFloatingToolbar component. This implementation is used when no override is specified.
This override provides the default behavior of the VerticalFloatingToolbar with FAB component. This implementation is used when no override is specified.
This override provides the default behavior of the WideNavigationRail component.
Represents the different modes that a date picker can be at.
Default values for Divider
Specifies the colors that will be used in a drag handle in different states.
Specifies the shapes that will be used in a drag handle in different states.
Specifies the sizes that will be used in a drag handle in different states.
Object to hold default values for ModalNavigationDrawer
State of the ModalNavigationDrawer and DismissibleNavigationDrawer composable.
Possible values of DrawerState.
A FloatingToolbarScrollBehavior that adjusts its properties to affect the size of a floating toolbar.
The type of element that can serve as a dropdown menu anchor.
Scope for ExposedDropdownMenuBox.
Contains default values used by Exposed Dropdown Menu.
The possible positions for a FloatingActionButton attached to a Scaffold.
Contains the baseline values used by FilterChip.
Contains the default values used by FloatingActionButton
Represents the tonal and shadow elevation for a floating action button in different states.
Scope for the children of FloatingActionButtonMenu
Represents the container and content colors used in a the various floating toolbars.
Contains default values used for the floating toolbar implementations.
The possible directions for a HorizontalFloatingToolbar or VerticalFloatingToolbar, used to determine the exit direction when a FloatingToolbarScrollBehavior is attached.
The possible positions for a FloatingActionButton attached to a HorizontalFloatingToolbar
A FloatingToolbarScrollBehavior defines how a floating toolbar should behave when the content under it is scrolled.
A state object that can be hoisted to control and observe the floating toolbar state. The state is read and updated by a FloatingToolbarScrollBehavior implementation.
The possible positions for a FloatingActionButton attached to a VerticalFloatingToolbar
Interface that allows libraries to override the behavior of the HorizontalFloatingToolbar component.
Parameters available to HorizontalFloatingToolbar.
Interface that allows libraries to override the behavior of the HorizontalFloatingToolbar component that includes a Floating Action Button.
Parameters available to the HorizontalFloatingToolbar that includes a Floating Action Button.
Represents the container and content colors used in an icon button in different states.
Contains the default values for all four icon and icon toggle button types.
The shapes that will be used in icon buttons. Icon button will morph between these shapes depending on the interaction of the icon button, assuming all of the shapes are CornerBasedShapes.
Represents the container and content colors used in a toggleable icon button in different states.
The shapes that will be used in toggle buttons. Toggle button will morph between these three shapes depending on the interaction of the toggle button, assuming all of the shapes are CornerBasedShapes.
Contains the baseline values used by an InputChip.
Represents the container and content colors used in a list item in different states.
Contains the default values used by list items.
Contains default values by the LoadingIndicator.
Holds predefined Material Design shapes as RoundedPolygons that can be used at various components as they are, or as part of a Morph.
Contains functions to access the current theme values provided at the call site's position in the hierarchy.
Contains default values used for DropdownMenu and DropdownMenuItem.
Represents the text and icon colors used in a menu item at different states.
Default values for ModalBottomSheet
Properties used to customize the behavior of a ModalBottomSheet.
Default values for ModalWideNavigationRail.
Interface that allows libraries to override the behavior of the ModalWideNavigationRail component.
Parameters available to ModalWideNavigationRail.
Properties used to customize the behavior of a ModalWideNavigationRail.
A motion scheme provides all the FiniteAnimationSpecs for a MaterialTheme.
Scope for the children of a MultiChoiceSegmentedButtonRow
Defaults used in NavigationBar.
Represents the colors of the various elements of a navigation item.
Defaults used in NavigationBarItem.
Interface that allows libraries to override the behavior of the NavigationBar component.
Parameters available to NavigationBar.
Represents the colors of the various elements of a drawer item.
Defaults used in NavigationDrawerItem.
Represents the colors of the various elements of a navigation item.
Class that describes the different supported icon positions of the navigation item.
Defaults used in NavigationRail
Represents the colors of the various elements of a navigation item.
Defaults used in NavigationRailItem.
Interface that allows libraries to override the behavior of the NavigationRail component.
Parameters available to NavigationRail.
Contains the default values used by OutlinedTextField. For defaults used in TextField, see TextFieldDefaults.
Contains the default values used for LinearProgressIndicator and CircularProgressIndicator.
Represents the color used by a RadioButton in different states.
Defaults used in RadioButton.
Class that holds information about RangeSlider's active range.
Configuration for ripple appearance, provided using LocalRippleConfiguration. In most cases the default values should be used, for custom design system use cases you should instead build your own custom ripple using createRippleModifierNode. To disable the ripple, provide null using LocalRippleConfiguration.
Default values used by ripple.
Object containing various default values for Scaffold component.
Represents the colors used by a search bar.
Defaults used in SearchBar and DockedSearchBar.
A SearchBarScrollBehavior defines how a search bar should behave when the content beneath it is scrolled.
The state of a search bar.
Possible values of SearchBarState.
The different colors used in parts of the SegmentedButton in different states
Represents the container and content colors used in a selectable chip in different states.
Represents the elevation used in a selectable chip in different states.
An interface that controls the selectable dates and years in the date pickers UI.
Contains the default values used by Shapes
Material surfaces can be displayed in different shapes. Shapes direct attention, identify components, communicate state, and express brand.
State of a sheet composable, such as ModalBottomSheet
Possible values of SheetState.
Class that describes the different supported item arrangements of the ShortNavigationBar.
Defaults used in ShortNavigationBar.
Defaults used in ShortNavigationBarItem.
Interface that allows libraries to override the behavior of the ShortNavigationBar component.
Parameters available to ShortNavigationBar.
Scope for the children of a SingleChoiceSegmentedButtonRow
Interface that allows libraries to override the behavior of single-row TopAppBar components.
Parameters available to SingleRowTopAppBar.
Represents the color used by a Slider in different states.
Object to hold defaults used by Slider
Class that holds information about Slider's and RangeSlider's active track and fractional positions where the discrete ticks should be drawn on the track.
Class that holds information about Slider's active range.
Interface to represent the data of one particular Snackbar as a piece of the SnackbarHostState.
Contains the default values used for Snackbar.
Possible durations of the Snackbar in SnackbarHost
State of the SnackbarHost, which controls the queue and the current Snackbar being shown inside the SnackbarHost.
Possible results of the SnackbarHostState.showSnackbar call
Interface to represent the visuals of one particular Snackbar as a piece of the SnackbarData.
Contains default values used by SplitButtonLayout and its style variants.
The shapes that will be used in SplitButtonLayout. Split button will morph between these shapes depending on the interaction of the buttons, assuming all of the shapes are CornerBasedShapes.
Contains the baseline values used by SuggestionChip.
Contains default values for SwipeToDismissBox and SwipeToDismissBoxState.
State of the SwipeToDismissBox composable.
The directions in which a SwipeToDismissBox can be dismissed.
Represents the colors used by a Switch in different states
Contains the default values used by Switch
Scope for the composable used to render a Tab indicator, this can be used for more complex indicators requiring layout information about the tabs like TabRowDefaults.PrimaryIndicator and TabRowDefaults.SecondaryIndicator
Data class that contains information about a tab's position on screen, used for calculating where to place the indicator that shows which tab is selected.
Contains default implementations and values used for TabRow.
Represents the colors of the input text, container, and content (including label, placeholder, leading and trailing icons) used in a text field in different states.
Contains the default values used by TextField. For defaults used in OutlinedTextField, see OutlinedTextFieldDefaults.
The position of the label with respect to the text field.
Scope for the label of a TextField or OutlinedTextField.
Represents the colors used by a TimePicker in different states
Contains the default values used by TimePicker
Default properties for a TimePickerDialog
Represents the display mode for the content of a TimePickerDialog.
Represents the different configurations for the layout of the Time Picker
The selection mode for the time picker
A state object that can be hoisted to observe the time picker state. It holds the current values and allows for directly setting those values.
Represents the container and content colors used in a toggle button in different states.
Contains the default values for all five toggle button types.
The shapes that will be used in toggle buttons. Toggle button will morph between these three shapes depending on the interaction of the toggle button, assuming all of the shapes are CornerBasedShapes.
Contains the default values used by ToggleFloatingActionButton
Scope for the children of ToggleFloatingActionButton
Tooltip defaults that contain default values for both PlainTooltip and RichTooltip
Tooltip scope for TooltipBox to be used to obtain the LayoutCoordinates of the anchor content, and to draw a caret for the tooltip.
The state that is associated with a TooltipBox. Each instance of TooltipBox should have its own TooltipState.
Represents the colors used by a top app bar in different states. This implementation animates the container color according to the top app bar scroll state. It does not animate the leading, headline, or trailing colors.
Contains default values used for the top app bar implementations.
A TopAppBarScrollBehavior defines how an app bar should behave when the content under it is scrolled.
A state object that can be hoisted to control and observe the top app bar state. The state is read and updated by a TopAppBarScrollBehavior implementation.
Interface that allows libraries to override the behavior of two-row TopAppBar components.
Parameters available to TwoRowsTopAppBar.
The Material Design type scale includes a range of contrasting styles that support the needs of your product and its content.
Contains the baseline values used by a VerticalDragHandle.
Interface that allows libraries to override the behavior of the VerticalFloatingToolbar component.
Parameters available to VerticalFloatingToolbar.
Interface that allows libraries to override the behavior of the VerticalFloatingToolbar component. This is the version where a floating action button (FAB) is present.
Parameters available to VerticalFloatingToolbar that includes a floating action button (FAB).
Contains the default values used for wavy progress indicators
Represents the colors of the various elements of a wide navigation rail.
Defaults used in WideNavigationRail.
Defaults used in WideNavigationRailItem.
Interface that allows libraries to override the behavior of the WideNavigationRail component.
Parameters available to WideNavigationRail.
A state object that can be hoisted to observe the wide navigation rail state. It allows for setting to the rail to be collapsed or expanded.
Possible values of WideNavigationRailState.
Properties
Flag indicating checkbox style. When true, the checkbox will use the Material Design 3 styling. This includes updated colors, and checkbox container sizing. When false, it uses the older Material Design 2 styling. This flag is intended for temporary use during the migration.
true if the current hourInput represents a valid hour (0-23).
true if the time input values are valid.
true if the current minuteInput represents a valid minute (0-59).
Indicates whether the selected time falls within the period from 12 PM inclusive to 12 AM non inclusive.
CompositionLocal containing the currently-selected BasicAlertDialogOverride.
CompositionLocal containing the preferred content color for a given position in the hierarchy. This typically represents the on color for a color in ColorScheme. For example, if the background color is ColorScheme.surface, this color is typically set to ColorScheme.onSurface.
CompositionLocal containing the currently-selected HorizontalFloatingToolbarOverride.
CompositionLocal containing the currently-selected HorizontalFloatingToolbarOverride.
CompositionLocal that configures whether Material components that have a visual size that is lower than the minimum touch target size for accessibility (such as Button) will include extra space outside the component to ensure that they are accessible. If set to false there will be no extra space, and so it is possible that if the component is placed near the edge of a layout / near to another component without any padding, there will not be enough space for an accessible touch target.
CompositionLocal that configures the minimum touch target size for Material components (such as Button) to ensure they are accessible. If a component has a visual size that is lower than the minimum touch target size, extra space outside the component will be included. If set to 0.dp, there will be no extra space, and so it is possible that if the component is placed near the edge of a layout / near to another component without any padding, there will not be enough space for an accessible touch target.
CompositionLocal containing the currently-selected ModalWideNavigationRailOverride.
CompositionLocal containing the currently-selected NavigationBarOverride.
CompositionLocal containing the currently-selected NavigationRailOverride.
CompositionLocal used for providing RippleConfiguration down the tree. This acts as a tree-local 'override' for ripples used inside components that you cannot directly control, such as to change the color of a specific component's ripple, or disable it entirely by providing null.
CompositionLocal containing the currently-selected ShortNavigationBarOverride.
CompositionLocal containing the currently-selected SingleRowTopAppBarOverride.
CompositionLocal containing the preferred TextStyle that will be used by Text components by default. To set the value for this CompositionLocal, see ProvideTextStyle which will merge any missing TextStyle properties with the existing TextStyle set in this CompositionLocal.
Composition Local used to check if ColorScheme.applyTonalElevation will be applied down the tree.
CompositionLocal containing the currently-selected TwoRowsTopAppBarOverride.
CompositionLocal containing the currently-selected VerticalFloatingToolbarOverride.
CompositionLocal containing the currently-selected VerticalFloatingToolbarWithFabOverride.
CompositionLocal containing the currently-selected WideNavigationRailOverride.
Functions
Apply this modifier to a FloatingActionButton to show or hide it with an animation, typically based on the app's main content scrolling.
An AppBarColumn arranges its children in a vertical sequence, and if any children overflow the constraints, an overflow indicator is displayed.
Default overflow indicator for an AppBarRow and AppBarColumn. It uses a IconButton. When clicked it will open the menu associated with the provided AppBarMenuState.
An AppBarRow arranges its children in a horizontal sequence, and if any children overflow the constraints, an overflow indicator is displayed.
A badge represents dynamic information such as a number of pending requests in a navigation bar.
Creates a BottomAppBarState.
A layout composable that places its children in a horizontal sequence. When a child uses Modifier.animateWidth with a relevant MutableInteractionSource, this button group can listen to the interactions and expand the width of the pressed child element as well as compress the neighboring child elements.
A layout composable that places its children in a horizontal sequence. When a child uses Modifier.animateWidth with a relevant MutableInteractionSource, this button group can listen to the interactions and expand the width of the pressed child element as well as compress the neighboring child elements. Additionally, items will overflow into a dropdown menu if there are too many items or the items are too wide to all fit onto the screen.
A Material Design contained loading indicator.
The Material color system contains pairs of colors that are typically used for the background and content color inside a component. For example, a Button typically uses primary for its background, and onPrimary for the color of its content (usually text or iconography).
The Material color system contains pairs of colors that are typically used for the background and content color inside a component. For example, a Button typically uses primary for its background, and onPrimary for the color of its content (usually text or iconography).
Returns a dark Material color scheme.
Creates a DatePickerState.
Creates a DateRangePickerState.
Content inside of a dismissible navigation drawer.
TODO link to mio page when available.
ExpandedDockedSearchBar represents a search bar that is currently expanding or in the expanded state, showing search results. This component is displayed in a popup over the collapsed search bar. It is recommended to use ExpandedDockedSearchBar on medium and large screens such as tablets, and to instead use ExpandedFullScreenSearchBar on compact screen such as phones.
ExpandedFullScreenSearchBar represents a search bar that is currently expanding or in the expanded state, showing search results. This component is displayed in a new full-screen dialog. If this expansion behavior is undesirable, for example on medium or large screens such as tablets, ExpandedDockedSearchBar can be used instead.
Returns a light Material color scheme.
FAB Menus should be used in conjunction with a ToggleFloatingActionButton to provide additional choices to the user after clicking a FAB.
FAB Menu Items should be used within a FloatingActionButtonMenu to provide additional choices to the user after clicking a FAB.
Creates a FloatingToolbarState.
A horizontal floating toolbar displays navigation and key actions in a Row. It can be positioned anywhere on the screen and floats over the rest of the content.
A floating toolbar that displays horizontally. The bar features its content within a Row, and an adjacent floating icon button. It can be positioned anywhere on the screen, floating above other content, and even in a Scaffold's floating action button slot. Its expanded flag controls the visibility of the actions with a slide animations.
A Material Design icon component that draws bitmap using tint, with a default value of LocalContentColor. If bitmap has no intrinsic size, this component will use the recommended default size. Icon is an opinionated component designed to be used with single-color icons so that they can be tinted correctly for the component they are placed in. For multicolored icons and icons that should not be tinted, use Color.Unspecified for tint. For generic images that should not be tinted, and do not follow the recommended icon size, use the generic androidx.compose.foundation.Image instead. For a clickable icon, see IconButton.
A Material Design icon component that draws painter using tint. If painter has no intrinsic size, this component will use the recommended default size. Icon is an opinionated component designed to be used with single-color icons so that they can be tinted correctly for the component they are placed in. For multicolored icons and icons that should not be tinted, use null for tint. For generic images that should not be tinted, and do not follow the recommended icon size, use the generic androidx.compose.foundation.Image instead. For a clickable icon, see IconButton.
A Material Design icon component that draws painter using tint, with a default value of LocalContentColor. If painter has no intrinsic size, this component will use the recommended default size. Icon is an opinionated component designed to be used with single-color icons so that they can be tinted correctly for the component they are placed in. For multicolored icons and icons that should not be tinted, use Color.Unspecified for tint. For generic images that should not be tinted, and do not follow the recommended icon size, use the generic androidx.compose.foundation.Image instead. For a clickable icon, see IconButton.
A Material Design icon component that draws imageVector using tint, with a default value of LocalContentColor. If imageVector has no intrinsic size, this component will use the recommended default size. Icon is an opinionated component designed to be used with single-color icons so that they can be tinted correctly for the component they are placed in. For multicolored icons and icons that should not be tinted, use Color.Unspecified for tint. For generic images that should not be tinted, and do not follow the recommended icon size, use the generic androidx.compose.foundation.Image instead. For a clickable icon, see IconButton.
Returns a light Material color scheme.
A Material Design loading indicator.
Material Expressive Theming refers to the customization of your Material Design app to better reflect your product’s brand.
Material Theming refers to the customization of your Material Design app to better reflect your product’s brand.
Reserves at least 48.dp in size to disambiguate touch interactions if the element would measure smaller.
Content inside of a modal navigation drawer.
Material design modal wide navigation rail.
Material Design navigation bar item.
Material Design navigation drawer item.
Material Design navigation rail item.
TODO link to mio page when available.
Content inside of a permanent navigation drawer.
Plain tooltip that provides a descriptive message.
This function is used to set the current value of LocalTextStyle, merging the given style with the current style values for any missing attributes. Any Text components included in this component's content will be styled with this style unless styled explicitly.
Creates a BottomAppBarState that is remembered across compositions.
Create and remember a BottomSheetScaffoldState.
Creates a DatePickerState for a DatePicker that is remembered across compositions.
Creates a DateRangePickerState for a DateRangePicker that is remembered across compositions.
Create and remember a DrawerState.
Creates a FloatingToolbarState that is remembered across compositions.
Create and remember a SheetState for ModalBottomSheet.
Creates a SliderState that is remembered across compositions.
Create and remember a SearchBarState.
Creates a SliderState that is remembered across compositions.
Create and remember a SheetState for BottomSheetScaffold.
Create and remember a SwipeToDismissBoxState.
Creates a TimePickerState for a time picker that is remembered across compositions and configuration changes.
Create and remember the default TooltipState for TooltipBox.
Creates a TopAppBarState that is remembered across compositions.
Create and remember a WideNavigationRailState.
Rich text tooltip that allows the user to pass in a title, text, and action. Tooltips are used to provide a descriptive message.
Creates a Ripple using the provided values and values inferred from the theme.
Material Design short navigation bar.
Material Design short navigation bar item.
A SplitButtonLayout let user define a button group consisting of 2 buttons. The leading button performs a primary action, and the trailing button performs a secondary action that is contextually related to the primary action.
Material surface is the central metaphor in material design. Each surface exists at a given elevation, which influences how that piece of surface visually relates to other surfaces and how that surface is modified by tonal variance.
Computes the surface tonal color at different elevation levels e.g. surface1 through surface5.
A composable that can be dismissed by swiping left or right.
High level element that displays text and provides semantics / accessibility information.
Time pickers help users select and set a specific time.
Factory function for the default implementation of TimePickerState should be used in most cases.
TODO link to mio page when available.
Toggleable FAB supports animating its container size, corner radius, and color when it is toggled, and should be used in conjunction with a FloatingActionButtonMenu to provide additional choices to the user after clicking the FAB.
TODO link to mio page when available.
Material TooltipBox that wraps a composable with a tooltip.
Constructor extension function for TooltipState
A basic two-rows Material Design top app bar.
A vertical floating toolbar displays navigation and key actions in a Column. It can be positioned anywhere on the screen and floats over the rest of the content.
A floating toolbar that displays vertically. The bar features its content within a Column, and an adjacent floating icon button. It can be positioned anywhere on the screen, floating above other content, and its expanded flag controls the visibility of the actions with a slide animations.
Material design wide navigation rail.
Material Design wide navigation rail item.