Commit bdf064a
Changed files (6)
lib
components
l10n
screens
lib/components/measurement_list.dart → lib/components/legacy_measurement_list.dart
@@ -9,11 +9,11 @@ import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:intl/intl.dart';
import 'package:provider/provider.dart';
-class MeasurementList extends StatelessWidget {
+class LegacyMeasurementsList extends StatelessWidget {
late final List<int> _tableElementsSizes;
late final int _sideFlex;
- MeasurementList(BuildContext context, {super.key}) {
+ LegacyMeasurementsList(BuildContext context, {super.key}) {
if (MediaQuery.of(context).size.width < 1000) {
_tableElementsSizes = [33, 9, 9, 9, 30];
_sideFlex = 1;
lib/l10n/app_en.arb
@@ -417,5 +417,7 @@
"customGraphMarkings": "Custom markings",
"@customGraphMarkings": {},
"addLine": "Add line",
- "@addLine": {}
+ "@addLine": {},
+ "useLegacyList": "Use legacy list",
+ "@useLegacyList": {}
}
lib/model/ram_only_implementations.dart
@@ -531,6 +531,19 @@ class RamSettings extends ChangeNotifier implements Settings {
notifyListeners();
}
+ bool _useLegacyList = false;
+
+ @override
+ bool get useLegacyList {
+ return _useLegacyList;
+ }
+
+ @override
+ set useLegacyList(bool value) {
+ _useLegacyList = value;
+ notifyListeners();
+ }
+
@override
void changeStepSize(TimeStep value) {
graphStepSize = value;
lib/model/settings_store.dart
@@ -627,6 +627,15 @@ class Settings extends ChangeNotifier {
_prefs.setStringList('horizontalGraphLines', value.map((e) => jsonEncode(e)).toList());
notifyListeners();
}
+
+ bool get useLegacyList {
+ return _prefs.getBool('useLegacyList') ?? false;
+ }
+
+ set useLegacyList(bool value) {
+ _prefs.setBool('useLegacyList', value);
+ notifyListeners();
+ }
}
enum TimeStep {
lib/screens/home.dart
@@ -1,4 +1,5 @@
import 'package:blood_pressure_app/components/consistent_future_builder.dart';
+import 'package:blood_pressure_app/components/legacy_measurement_list.dart';
import 'package:blood_pressure_app/components/measurement_graph.dart';
import 'package:blood_pressure_app/model/blood_pressure.dart';
import 'package:blood_pressure_app/model/settings_store.dart';
@@ -47,29 +48,35 @@ class AppHome extends StatelessWidget {
return Center(
child: Container(
padding: padding,
- child: Column(children: [
- const MeasurementGraph(),
- ModernListHeader(),
- Expanded(
- flex: 50,
- child: Consumer<BloodPressureModel>(
- builder: (context, model, child) {
- return Consumer<Settings>(
- builder: (context, settings, child) {
- return ConsistentFutureBuilder(
+ child: Consumer<Settings>(
+ builder: (context, settings, child) {
+ return Column(children: [
+ const MeasurementGraph(),
+ if (!settings.useLegacyList)
+ const ModernListHeader(),
+ if (!settings.useLegacyList)
+ Expanded(
+ flex: 50,
+ child: Consumer<BloodPressureModel>(
+ builder: (context, model, child) {
+ return ConsistentFutureBuilder(
future: model.getInTimeRange(settings.displayDataStart, settings.displayDataEnd),
onData: (context, data) {
return MeasurementList(
entries: data
);
}
- );
- },
- );
- },
- )
- ),
- ]),
+ );
+ },
+ )
+ ),
+ if(settings.useLegacyList)
+ Expanded(
+ flex: 50,
+ child: LegacyMeasurementsList(context)),
+ ]);
+ }
+ ),
),
);
},
lib/screens/settings.dart
@@ -153,6 +153,14 @@ class SettingsPage extends StatelessWidget {
onMainColorChanged: (color) => settings.pulColor = createMaterialColor((color ?? Colors.red).value),
initialColor: settings.pulColor,
title: Text(AppLocalizations.of(context)!.pulColor)),
+ SwitchSettingsTile(
+ key: const Key('useLegacyList'),
+ initialValue: settings.useLegacyList,
+ onToggle: (value) {
+ settings.useLegacyList = value;
+ },
+ leading: const Icon(Icons.list_alt_outlined),
+ title: Text(AppLocalizations.of(context)!.useLegacyList)),
]),
SettingsSection(title: Text(AppLocalizations.of(context)!.behavior), children: [