Build apps faster with our new App builder! Check it out →

FailureConfirmationDialogContent

Android

Component in Wear Material 3 Compose

[FailureConfirmationDialogContent] provides the content for a failure confirmation dialog with icon and an optional short curved text. This variation of confirmation dialog indicates an unsuccessful operation or action.

Prefer using [FailureConfirmationDialog] directly, which provides built-in animations when showing/hiding the dialog. This composable may be used to provide the content for a confirmation dialog if custom show/hide animations are required.

Where user input is required, such as choosing to ok or cancel an action, use [AlertDialog] instead of [FailureConfirmationDialog].

Last updated:

Installation

dependencies {
   implementation("androidx.wear.compose:compose-material3:1.0.0-alpha34")
}

Overloads

@Composable
fun FailureConfirmationDialogContent(
    curvedText: (CurvedScope.() -> Unit)?,
    modifier: Modifier = Modifier,
    colors: ConfirmationDialogColors = ConfirmationDialogDefaults.failureColors(),
    content: @Composable () -> Unit = { ConfirmationDialogDefaults.FailureIcon() },
)

Parameters

namedescription
curvedTextA slot for displaying curved text content which will be shown along the bottom edge of the dialog. We recommend using [confirmationDialogCurvedText] for this parameter, which will give the default sweep angle and padding.
modifierModifier to be applied to the confirmation content.
colorsA [ConfirmationDialogColors] object for customizing the colors used in this [FailureConfirmationDialog]. will be adjusted by the accessibility manager according to the content displayed.
contentA slot for displaying an icon inside the confirmation dialog, which can be animated. Defaults to [ConfirmationDialogDefaults.FailureIcon].

Code Example

FailureConfirmationDialogSample

@Composable
fun FailureConfirmationDialogSample() {
    var showConfirmation by remember { mutableStateOf(false) }

    // Use AppScaffold to improve ConfirmationDialog's Performance
    AppScaffold {
        Box(Modifier.fillMaxSize()) {
            FilledTonalButton(
                modifier = Modifier.align(Alignment.Center),
                onClick = { showConfirmation = true },
                label = { Text("Show Confirmation") }
            )
        }

        val text = "Failure"
        val style = ConfirmationDialogDefaults.curvedTextStyle
        FailureConfirmationDialog(
            visible = showConfirmation,
            onDismissRequest = { showConfirmation = false },
            curvedText = { confirmationDialogCurvedText(text, style) }
        )
    }
}
by @alexstyl