Added Performance overlays in developer options

This commit is contained in:
2024-03-18 22:47:23 +01:00
parent 0770ba49eb
commit e7192008c0
8 changed files with 184 additions and 66 deletions

View File

@ -1,6 +1,7 @@
import 'package:flutter/material.dart';
import 'package:json_annotation/json_annotation.dart';
import '../devTools/devToolsSettings.dart';
import '../file/fileSettings.dart';
import '../fileView/fileViewSettings.dart';
import '../gradeAverages/gradeAveragesSettings.dart';
@ -27,6 +28,7 @@ class Settings {
HolidaysSettings holidaysSettings;
FileViewSettings fileViewSettings;
NotificationSettings notificationSettings;
DevToolsSettings devToolsSettings;
Settings({
required this.appTheme,
@ -38,6 +40,7 @@ class Settings {
required this.holidaysSettings,
required this.fileViewSettings,
required this.notificationSettings,
required this.devToolsSettings,
});
static String _themeToJson(ThemeMode m) => m.name;

View File

@ -23,6 +23,8 @@ Settings _$SettingsFromJson(Map<String, dynamic> json) => Settings(
json['fileViewSettings'] as Map<String, dynamic>),
notificationSettings: NotificationSettings.fromJson(
json['notificationSettings'] as Map<String, dynamic>),
devToolsSettings: DevToolsSettings.fromJson(
json['devToolsSettings'] as Map<String, dynamic>),
);
Map<String, dynamic> _$SettingsToJson(Settings instance) => <String, dynamic>{
@ -35,4 +37,5 @@ Map<String, dynamic> _$SettingsToJson(Settings instance) => <String, dynamic>{
'holidaysSettings': instance.holidaysSettings.toJson(),
'fileViewSettings': instance.fileViewSettings.toJson(),
'notificationSettings': instance.notificationSettings.toJson(),
'devToolsSettings': instance.devToolsSettings.toJson(),
};

View File

@ -0,0 +1,15 @@
import 'package:json_annotation/json_annotation.dart';
part 'devToolsSettings.g.dart';
@JsonSerializable()
class DevToolsSettings {
bool showPerformanceOverlay;
bool checkerboardOffscreenLayers;
bool checkerboardRasterCacheImages;
DevToolsSettings({required this.showPerformanceOverlay, required this.checkerboardOffscreenLayers, required this.checkerboardRasterCacheImages});
factory DevToolsSettings.fromJson(Map<String, dynamic> json) => _$DevToolsSettingsFromJson(json);
Map<String, dynamic> toJson() => _$DevToolsSettingsToJson(this);
}

View File

@ -0,0 +1,22 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'devToolsSettings.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
DevToolsSettings _$DevToolsSettingsFromJson(Map<String, dynamic> json) =>
DevToolsSettings(
showPerformanceOverlay: json['showPerformanceOverlay'] as bool,
checkerboardOffscreenLayers: json['checkerboardOffscreenLayers'] as bool,
checkerboardRasterCacheImages:
json['checkerboardRasterCacheImages'] as bool,
);
Map<String, dynamic> _$DevToolsSettingsToJson(DevToolsSettings instance) =>
<String, dynamic>{
'showPerformanceOverlay': instance.showPerformanceOverlay,
'checkerboardOffscreenLayers': instance.checkerboardOffscreenLayers,
'checkerboardRasterCacheImages': instance.checkerboardRasterCacheImages,
};