Add Android quick streaming and logout confirmation

This commit is contained in:
2026-04-22 11:44:15 +08:00
parent b07f243c88
commit c5b7451fc6
8 changed files with 672 additions and 63 deletions

View File

@@ -88,6 +88,32 @@ class _SettingsPageState extends State<SettingsPage> {
}
}
Future<void> _confirmLogout(AuthProvider auth) async {
final confirmed = await showDialog<bool>(
context: context,
builder: (context) {
return AlertDialog(
title: const Text("Confirm Logout"),
content: const Text("Are you sure you want to log out now?"),
actions: [
TextButton(
onPressed: () => Navigator.pop(context, false),
child: const Text("Cancel"),
),
FilledButton(
onPressed: () => Navigator.pop(context, true),
child: const Text("Logout"),
),
],
);
},
);
if (confirmed == true && mounted) {
await auth.logout();
}
}
@override
Widget build(BuildContext context) {
final auth = context.watch<AuthProvider>();
@@ -278,7 +304,7 @@ class _SettingsPageState extends State<SettingsPage> {
SizedBox(
width: double.infinity,
child: FilledButton.tonalIcon(
onPressed: auth.logout,
onPressed: () => _confirmLogout(auth),
icon: const Icon(Icons.logout),
label: const Text("Logout"),
style: FilledButton.styleFrom(