From 9e5e93da39a6a43ac3bf61544dceab1bc5edf357 Mon Sep 17 00:00:00 2001 From: Pierre HUBERT Date: Tue, 12 May 2020 18:40:40 +0200 Subject: [PATCH] Remove old application settings route --- lib/ui/routes/app_settings_route.dart | 109 -------------------------- 1 file changed, 109 deletions(-) delete mode 100644 lib/ui/routes/app_settings_route.dart diff --git a/lib/ui/routes/app_settings_route.dart b/lib/ui/routes/app_settings_route.dart deleted file mode 100644 index 2bbd3ef..0000000 --- a/lib/ui/routes/app_settings_route.dart +++ /dev/null @@ -1,109 +0,0 @@ -import 'package:comunic/helpers/preferences_helper.dart'; -import 'package:comunic/utils/intl_utils.dart'; -import 'package:comunic/utils/ui_utils.dart'; -import 'package:flutter/material.dart'; - -/// Application settings route -/// -/// @author Pierre HUBERT - -class AppSettingsRoute extends StatelessWidget { - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: Text(tr("App settings")), - ), - body: _AppSettingsBody(), - ); - } -} - -class _AppSettingsBody extends StatefulWidget { - @override - __AppSettingsBodyState createState() => __AppSettingsBodyState(); -} - -class __AppSettingsBodyState extends State<_AppSettingsBody> { - PreferencesHelper _preferencesHelper; - - @override - void initState() { - super.initState(); - _load(); - } - - void _load() async { - final prefs = await PreferencesHelper.getInstance(); - setState(() { - _preferencesHelper = prefs; - }); - } - - void _needRefresh() { - setState(() {}); - } - - @override - Widget build(BuildContext context) { - if (_preferencesHelper == null) - return Center(child: CircularProgressIndicator()); - - return Padding( - padding: const EdgeInsets.all(8.0), - child: ListView( - children: [ - // Dark theme - _CheckBoxPreference( - preferenceKey: PreferencesKeyList.ENABLE_DARK_THEME, - preferencesHelper: _preferencesHelper, - onUpdate: _needRefresh, - title: tr("Enable dark theme"), - description: - tr("You will need to restart the application to apply changes"), - ), - ListTile( - title: Text(tr("About Comunic")), - onTap: () => showAboutAppDialog(context), - ), - ], - ), - ); - } -} - -class _CheckBoxPreference extends StatelessWidget { - final PreferencesKeyList preferenceKey; - final PreferencesHelper preferencesHelper; - final VoidCallback onUpdate; - final String title; - final String description; - - const _CheckBoxPreference({ - Key key, - @required this.preferenceKey, - @required this.preferencesHelper, - @required this.onUpdate, - @required this.title, - @required this.description, - }) : assert(preferencesHelper != null), - assert(preferencesHelper != null), - assert(onUpdate != null), - assert(title != null), - assert(description != null), - super(key: key); - - @override - Widget build(BuildContext context) { - return SwitchListTile( - value: preferencesHelper.getBool(preferenceKey), - onChanged: (b) async { - await preferencesHelper.setBool(preferenceKey, b); - onUpdate(); - return true; - }, - title: Text(title), - subtitle: Text(description), - ); - } -}