ChangelogOverlay

fun ChangelogOverlay(client: FeedbackClient, visible: Boolean, onlyIfUnseen: Boolean = false, autoMarkSeen: Boolean = true, onDismiss: () -> Unit)(source)

Pure Jetpack Compose What's-New modal bottom sheet overlay.

When visible becomes true, asynchronously loads the latest published release notes via FeedbackClient.prepareChangelogOverlay and displays them inside a modal bottom sheet styled according to console configuration.

Auto-Dismissal and Clean Lifecycle

If the changelog feature is disabled in the CupThread developer console, no published entries exist, or onlyIfUnseen is true and the release was already seen, this composable automatically invokes onDismiss, making it safe to mount unconditionally on app startup or home screen composables.

Theming

Inherits the ambient Compose MaterialTheme. Wrap inside CupThreadTheme to inherit the remote color theme configured in the developer console.

Example Integration

@Composable
fun MainAppScreen(client: FeedbackClient) {
var showChangelog by rememberSaveable { mutableStateOf(true) }

CupThreadTheme(client) {
Scaffold { padding ->
AppNavigation(Modifier.padding(padding))

ChangelogOverlay(
client = client,
visible = showChangelog,
onlyIfUnseen = true,
onDismiss = { showChangelog = false }
)
}
}
}

Screenshot

Changelog Overlay

Parameters

client

Shared FeedbackClient instance.

visible

Whether the What's-New bottom sheet should be displayed.

onlyIfUnseen

If true, checks ChangelogStore and auto-dismisses if the latest version was already seen.

autoMarkSeen

If true, automatically marks the latest version as seen in ChangelogStore.

onDismiss

Invoked when the user taps close/continue or if there are no new updates to show.