mangayomi-mirror/lib/modules/more/settings/settings_screen.dart
Moustapha Kodjo Amadou f729380223 feat: Implement app lock feature with biometric authentication
- Added AppLockScreen for biometric authentication to unlock the app.
- Introduced security settings screen to enable/disable app lock.
- Integrated local_auth package for biometric authentication support.
- Created security state providers to manage app lock state.
- Updated chapter list tile widget to support dismiss actions for bookmarking and marking chapters as read.
- Enhanced CBZ conversion process to include ComicInfo.xml metadata.
- Added conditional UI elements based on platform capabilities.
- Added Completed & Tracked filter in library
2026-03-04 11:56:49 +01:00

75 lines
2.4 KiB
Dart

import 'dart:io';
import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
import 'package:mangayomi/modules/more/widgets/list_tile_widget.dart';
import 'package:mangayomi/providers/l10n_providers.dart';
class SettingsScreen extends StatelessWidget {
const SettingsScreen({super.key});
@override
Widget build(BuildContext context) {
final l10n = l10nLocalizations(context);
return Scaffold(
appBar: AppBar(title: Text(l10n!.settings)),
body: SingleChildScrollView(
child: Column(
children: [
ListTileWidget(
title: l10n.general,
icon: Icons.settings,
onTap: () => context.push('/general'),
),
ListTileWidget(
title: l10n.appearance,
icon: Icons.color_lens_rounded,
onTap: () => context.push('/appearance'),
),
ListTileWidget(
title: l10n.reader,
icon: Icons.chrome_reader_mode_rounded,
onTap: () => context.push('/readerMode'),
),
ListTileWidget(
title: l10n.player,
icon: Icons.play_circle_outline_outlined,
onTap: () => context.push('/playerOverview'),
),
ListTileWidget(
title: l10n.downloads,
icon: Icons.download_outlined,
onTap: () => context.push('/downloads'),
),
ListTileWidget(
title: l10n.tracking,
icon: Icons.sync_outlined,
onTap: () => context.push('/track'),
),
ListTileWidget(
title: l10n.syncing,
icon: Icons.cloud_sync_outlined,
onTap: () => context.push('/sync'),
),
ListTileWidget(
title: l10n.browse,
icon: Icons.explore_rounded,
onTap: () => context.push('/browseS'),
),
if (!Platform.isLinux)
ListTileWidget(
title: l10n.security,
icon: Icons.security_rounded,
onTap: () => context.push('/security'),
),
ListTileWidget(
title: l10n.about,
icon: Icons.info_outline,
onTap: () => context.push('/about'),
),
],
),
),
);
}
}