# DialogSceneStrategy.Companion.DialogKey

Artifact: [androidx.navigation3:navigation3-ui](https://developer.android.com/jetpack/androidx/releases/navigation3) [View Source](https://cs.android.com/search?q=file:androidx/navigation3/scene/DialogScene.kt+class:androidx.navigation3.scene.DialogSceneStrategy.Companion.DialogKey) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/navigation3#1.1.0) Common/All
- Cmn

  ```
  object DialogSceneStrategy.Companion.DialogKey : NavMetadataKey<DialogProperties>
  ```

*** ** * ** ***

The key for `https://developer.android.com/reference/kotlin/androidx/navigation3/runtime/NavEntry#metadata()` or `https://developer.android.com/reference/kotlin/androidx/navigation3/scene/Scene#metadata()` to indicate that an entry should be displayed within a `https://developer.android.com/reference/kotlin/androidx/compose/ui/window/Dialog.composable#Dialog(kotlin.Function0,androidx.compose.ui.window.DialogProperties,kotlin.Function0)`.

```kotlin
import androidx.compose.foundation.background
import androidx.compose.foundation.border
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.text.BasicText
import androidx.compose.material3.Button
import androidx.compose.material3.Text
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.text.TextStyle
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp
import androidx.compose.ui.window.DialogProperties
import androidx.navigation3.runtime.NavKey
import androidx.navigation3.runtime.entryProvider
import androidx.navigation3.runtime.metadata
import androidx.navigation3.runtime.rememberNavBackStack
import androidx.navigation3.scene.DialogSceneStrategy
import androidx.navigation3.scene.DialogSceneStrategy.Companion.DialogKey
import androidx.navigation3.ui.NavDisplay

val backStack = rememberNavBackStack(OverlaidNavKey)
NavDisplay(
    backStack,
    onBack = { backStack.removeLastOrNull() },
    sceneStrategies = listOf(DialogSceneStrategy()),
    entryProvider =
        entryProvider {
            entry<OverlaidNavKey> {
                Box(
                    Modifier.fillMaxSize()
                        .background(Color(0.2f, 0.2f, 1.0f, 1.0f))
                        .border(10.dp, Color.Blue),
                    contentAlignment = Alignment.Center,
                ) {
                    Column(horizontalAlignment = Alignment.CenterHorizontally) {
                        BasicText(
                            "Overlaid Entry",
                            Modifier.size(50.dp),
                            style = TextStyle(textAlign = TextAlign.Center),
                        )
                        Button(onClick = { backStack.add(DialogNavKey) }) {
                            Text("Open Dialog")
                        }
                    }
                }
            }
            entry<DialogNavKey>(metadata = metadata { put(DialogKey, DialogProperties()) }) {
                RedBox("Dialog")
            }
        },
)
```