Added option to sort talk favorites to top

This commit is contained in:
2023-06-07 11:06:43 +02:00
parent a32e70109e
commit a922e0f8ae
9 changed files with 65 additions and 6 deletions

View File

@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
import 'package:json_annotation/json_annotation.dart';
import '../gradeAverages/gradeAveragesSettings.dart';
import '../talk/talkSettings.dart';
import '../timetable/timetableSettings.dart';
part 'settings.g.dart';
@ -17,12 +18,14 @@ class Settings {
GradeAveragesSettings gradeAveragesSettings;
TimetableSettings timetableSettings;
TalkSettings talkSettings;
Settings({
required this.appTheme,
required this.devToolsEnabled,
required this.gradeAveragesSettings,
required this.timetableSettings
required this.timetableSettings,
required this.talkSettings,
});
static String _themeToJson(ThemeMode m) => m.name;

View File

@ -13,6 +13,8 @@ Settings _$SettingsFromJson(Map<String, dynamic> json) => Settings(
json['gradeAveragesSettings'] as Map<String, dynamic>),
timetableSettings: TimetableSettings.fromJson(
json['timetableSettings'] as Map<String, dynamic>),
talkSettings:
TalkSettings.fromJson(json['talkSettings'] as Map<String, dynamic>),
);
Map<String, dynamic> _$SettingsToJson(Settings instance) => <String, dynamic>{
@ -20,4 +22,5 @@ Map<String, dynamic> _$SettingsToJson(Settings instance) => <String, dynamic>{
'devToolsEnabled': instance.devToolsEnabled,
'gradeAveragesSettings': instance.gradeAveragesSettings.toJson(),
'timetableSettings': instance.timetableSettings.toJson(),
'talkSettings': instance.talkSettings.toJson(),
};

View File

@ -4,6 +4,7 @@ import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
import '../gradeAverages/gradeAveragesSettings.dart';
import '../talk/talkSettings.dart';
import '../timetable/timetableSettings.dart';
import 'settings.dart';
@ -55,6 +56,9 @@ class SettingsProvider extends ChangeNotifier {
timetableSettings: TimetableSettings(
zoom: 40,
),
talkSettings: TalkSettings(
sortFavoritesToTop: true,
),
);
}
}