fix(android) detekt: extract SignOutConfirmDialog helper

Sign-out confirm dialog landed inline in SettingsScreen and pushed
it past the 60-line cap (93/60). Same pattern as other dialog
extractions in the project.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-27 21:15:45 -04:00
parent 80b59aecf0
commit dd7c5544bf
@@ -131,8 +131,20 @@ fun SettingsScreen(
}
}
if (showSignOutConfirm) {
SignOutConfirmDialog(
onConfirm = {
showSignOutConfirm = false
viewModel.signOut()
},
onDismiss = { showSignOutConfirm = false },
)
}
}
@Composable
private fun SignOutConfirmDialog(onConfirm: () -> Unit, onDismiss: () -> Unit) {
AlertDialog(
onDismissRequest = { showSignOutConfirm = false },
onDismissRequest = onDismiss,
title = { Text("Sign out?") },
text = {
Text(
@@ -142,10 +154,7 @@ fun SettingsScreen(
},
confirmButton = {
Button(
onClick = {
showSignOutConfirm = false
viewModel.signOut()
},
onClick = onConfirm,
colors = ButtonDefaults.buttonColors(
containerColor = MaterialTheme.colorScheme.errorContainer,
contentColor = MaterialTheme.colorScheme.onErrorContainer,
@@ -153,10 +162,9 @@ fun SettingsScreen(
) { Text("Sign out") }
},
dismissButton = {
TextButton(onClick = { showSignOutConfirm = false }) { Text("Cancel") }
TextButton(onClick = onDismiss) { Text("Cancel") }
},
)
}
}
@Composable