39 lines
1.2 KiB
Dart
39 lines
1.2 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
|
import 'package:krezus/domains/settings/settings_bloc.dart';
|
|
import 'package:krezus/pages/common/titled_container.dart';
|
|
|
|
class SettingsSettings extends StatelessWidget {
|
|
const SettingsSettings({super.key});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return BlocBuilder<SettingsBloc, SettingsState>(
|
|
builder: (context, state) => TitledContainer(
|
|
title: "Theme",
|
|
child: Column(
|
|
children: [
|
|
SegmentedButton<ThemeMode>(
|
|
segments: const [
|
|
ButtonSegment(
|
|
value: ThemeMode.system,
|
|
icon: Icon(Icons.settings)
|
|
),
|
|
ButtonSegment(
|
|
value: ThemeMode.light,
|
|
icon: Icon(Icons.light_mode)
|
|
),
|
|
ButtonSegment(
|
|
value: ThemeMode.dark,
|
|
icon: Icon(Icons.dark_mode)
|
|
),
|
|
],
|
|
selected: {state.themeMode},
|
|
onSelectionChanged: (themeMode) => context.read<SettingsBloc>().add(SetThemeMode(themeMode.first)),
|
|
)
|
|
],
|
|
),
|
|
)
|
|
);
|
|
}
|
|
} |