Files
Client/lib/view/pages/settings/sections/appearance_section.dart
T
2026-05-05 21:44:23 +02:00

37 lines
1.2 KiB
Dart

import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import '../../../../state/app/modules/settings/bloc/settings_cubit.dart';
import '../../../../theming/app_theme.dart';
class AppearanceSection extends StatelessWidget {
const AppearanceSection({super.key});
@override
Widget build(BuildContext context) {
final settings = context.read<SettingsCubit>();
return ListTile(
leading: const Icon(Icons.dark_mode_outlined),
title: const Text('Farbgebung'),
trailing: DropdownButton<ThemeMode>(
value: settings.val().appTheme,
icon: const Icon(Icons.arrow_drop_down),
items: ThemeMode.values
.map((e) => DropdownMenuItem<ThemeMode>(
value: e,
enabled: e != settings.val().appTheme,
child: Row(
children: [
Icon(AppTheme.getDisplayOptions(e).icon),
const SizedBox(width: 10),
Text(AppTheme.getDisplayOptions(e).displayName),
],
),
))
.toList(),
onChanged: (e) => settings.val(write: true).appTheme = e!,
),
);
}
}