mirror of
https://github.com/JGeek00/adguard-home-manager.git
synced 2025-05-15 06:22:48 +00:00
Added theme modal
This commit is contained in:
parent
91ec08614c
commit
eace1767f0
13 changed files with 495 additions and 13 deletions
|
@ -1,10 +1,60 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
|
||||
|
||||
import 'package:adguard_home_manager/screens/settings/theme_modal.dart';
|
||||
import 'package:adguard_home_manager/screens/settings/custom_list_tile.dart';
|
||||
import 'package:adguard_home_manager/screens/settings/section_label.dart';
|
||||
|
||||
import 'package:adguard_home_manager/providers/app_config_provider.dart';
|
||||
|
||||
class Settings extends StatelessWidget {
|
||||
const Settings({Key? key}) : super(key: key);
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container();
|
||||
final appConfigProvider = Provider.of<AppConfigProvider>(context);
|
||||
|
||||
final statusBarHeight = MediaQuery.of(context).viewInsets.top;
|
||||
|
||||
String getThemeString() {
|
||||
switch (appConfigProvider.selectedThemeNumber) {
|
||||
case 0:
|
||||
return AppLocalizations.of(context)!.systemDefined;
|
||||
|
||||
case 1:
|
||||
return AppLocalizations.of(context)!.light;
|
||||
|
||||
case 2:
|
||||
return AppLocalizations.of(context)!.dark;
|
||||
|
||||
default:
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
void openThemeModal() {
|
||||
showModalBottomSheet(
|
||||
context: context,
|
||||
isScrollControlled: true,
|
||||
builder: (context) => ThemeModal(
|
||||
statusBarHeight: statusBarHeight,
|
||||
selectedTheme: appConfigProvider.selectedThemeNumber,
|
||||
),
|
||||
backgroundColor: Colors.transparent,
|
||||
);
|
||||
}
|
||||
|
||||
return ListView(
|
||||
children: [
|
||||
SectionLabel(label: AppLocalizations.of(context)!.appSettings),
|
||||
CustomListTile(
|
||||
leadingIcon: Icons.light_mode_rounded,
|
||||
label: AppLocalizations.of(context)!.theme,
|
||||
description: getThemeString(),
|
||||
onTap: openThemeModal,
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue