66 lines
2.1 KiB
Dart
66 lines
2.1 KiB
Dart
import 'package:flutter/material.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(), // your custom language dialog
|
|
);
|
|
},
|
|
),
|
|
//Theme Mode Switch (Light/Dark)
|
|
ListTile(
|
|
leading: const Icon(Icons.brightness_6),
|
|
title: Text(AppLocalizations.of(context).themeMode),
|
|
enabled: false,
|
|
//trailing: Switch(
|
|
// value: state.isDarkMode,
|
|
// onChanged: (val) {
|
|
// context.read<ThemeCubit>().toggleDarkMode(val);
|
|
// },
|
|
//),
|
|
),
|
|
//Color_Theme_Selection
|
|
ListTile(
|
|
leading: const Icon(Icons.color_lens),
|
|
title: Text(AppLocalizations.of(context).themeColor),
|
|
//enabled: false,
|
|
onTap: () {
|
|
showDialog(
|
|
context: context,
|
|
builder: (_) => const ColorThemeDialog(),
|
|
);
|
|
}),
|
|
],
|
|
);
|
|
},
|
|
),
|
|
);
|
|
}
|
|
}
|