WindowInsetsSchema

@Serializable
sealed interface WindowInsetsSchema

Specifies which system window insets should be applied as padding to a tile.

Applied first in styledWith() via Modifier.windowInsetsPadding(...), so that subsequent margin and size constraints operate within the safe area.

Use SystemBars for the most common case (root screen containers that should avoid both status bar and navigation bar). For screens with a keyboard input, add Ime to handle soft keyboard insets.

Variants → Compose mapping:

DSL helpers (mosaic-server):

windowInsets(windowInsetsSystemBars())
windowInsets(windowInsetsStatusBar())
windowInsets(windowInsetsNavigationBar())
windowInsets(windowInsetsIme())
windowInsets(windowInsetsCaptionBar())
windowInsets(windowInsetsDisplayCutout())
windowInsets(windowInsetsWaterfall())

Note: Only one inset type can be applied per StyleSchema. To combine multiple insets (e.g. status bar + IME), use SystemBars which covers both vertical system bars.

Inheritors

Types

Link copied to clipboard
@Serializable
@SerialName(value = "caption_bar")
data object CaptionBar : WindowInsetsSchema
Link copied to clipboard
@Serializable
@SerialName(value = "display_cutout")
data object DisplayCutout : WindowInsetsSchema
Link copied to clipboard
@Serializable
@SerialName(value = "ime")
data object Ime : WindowInsetsSchema
Link copied to clipboard
@Serializable
@SerialName(value = "navigation_bar")
data object NavigationBar : WindowInsetsSchema
Link copied to clipboard
@Serializable
@SerialName(value = "status_bar")
data object StatusBar : WindowInsetsSchema
Link copied to clipboard
@Serializable
@SerialName(value = "system_bars")
data object SystemBars : WindowInsetsSchema
Link copied to clipboard
@Serializable
@SerialName(value = "waterfall")
data object Waterfall : WindowInsetsSchema