Files
kmobile/lib/features/profile/preferences/preference_screen.dart
2025-09-03 15:51:44 +05:30

61 lines
1.9 KiB
Dart

import 'package:flutter/material.dart';
import 'package:kmobile/features/profile/preferences/theme_mode_dialog.dart';
import 'language_dialog.dart';
import 'color_theme_dialog.dart';
import '../../../l10n/app_localizations.dart';
import 'package:kmobile/features/auth/controllers/theme_cubit.dart';
import 'package:kmobile/features/auth/controllers/theme_state.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
class PreferenceScreen extends StatelessWidget {
const PreferenceScreen({super.key});
@override
Widget build(BuildContext context) {
final loc = AppLocalizations.of(context);
return Scaffold(
appBar: AppBar(
title: Text(loc.preferences),
),
body: BlocBuilder<ThemeCubit, ThemeState>(
builder: (context, state) {
return ListView(
children: [
// Language Selection
ListTile(
leading: const Icon(Icons.language),
title: Text(loc.language),
onTap: () {
showDialog(
context: context,
builder: (_) => const LanguageDialog(),
);
},
),
//Theme Mode Switch (Light/Dark)
ListTile(
leading: const Icon(Icons.brightness_6),
title: Text(AppLocalizations.of(context).themeMode),
onTap: () {
showThemeModeDialog(context);
},
),
//Color_Theme_Selection
ListTile(
leading: const Icon(Icons.color_lens),
title: Text(AppLocalizations.of(context).themeColor),
onTap: () {
showDialog(
context: context,
builder: (_) => const ColorThemeDialog(),
);
}),
],
);
},
),
);
}
}