PermissionSetup

fun PermissionSetup(camera: Boolean, bluetooth: Boolean, required: Boolean = false, onShowing: (Boolean) -> Unit = {}, content: @Composable () -> Unit)

First-run permissions without an extra step: on first open the system dialogs appear straight away, one after another (rememberSetupPermissionRequest: one combined request on Android, chained on iOS), over the app's own first screen — which doesn't change behind them. Most people just allow and carry on.

Only if something is still missing once the dialogs have closed:

  • required (a field officer's verifier): a calm page — icons, title, Allow (asks once more), then Open Settings — shown until everything is allowed.

  • otherwise nothing here; the screen that needs it asks at the point of use (RequirePermissions).

Parameters

onShowing

told true while the required page covers the screen (hosts hide floating actions).