reworked developer tools with diagnostics, storage viewers and release-capable debug overlays

This commit is contained in:
2026-09-26 14:34:47 +02:00
parent 0f6c388940
commit e6f74ca6fe
18 changed files with 1330 additions and 239 deletions
+23 -5
View File
@@ -8,8 +8,22 @@ enum MarianumConnectEndpoint { live, beta, custom }
@JsonSerializable()
class DevToolsSettings {
bool showPerformanceOverlay;
bool checkerboardOffscreenLayers;
bool checkerboardRasterCacheImages;
@JsonKey(defaultValue: false)
bool showFrameStats;
@JsonKey(defaultValue: false)
bool showMemoryStats;
@JsonKey(defaultValue: false)
bool showSemanticsDebugger;
@JsonKey(defaultValue: false)
bool slowAnimations;
/// Forced text scale factor; `0` follows the system setting.
@JsonKey(defaultValue: 0)
double textScaleOverride;
@JsonKey(defaultValue: MarianumConnectEndpoint.live)
MarianumConnectEndpoint marianumConnectEndpoint;
@@ -24,8 +38,11 @@ class DevToolsSettings {
DevToolsSettings({
required this.showPerformanceOverlay,
required this.checkerboardOffscreenLayers,
required this.checkerboardRasterCacheImages,
this.showFrameStats = false,
this.showMemoryStats = false,
this.showSemanticsDebugger = false,
this.slowAnimations = false,
this.textScaleOverride = 0,
this.marianumConnectEndpoint = MarianumConnectEndpoint.live,
this.marianumConnectCustomUrl = '',
this.emergencyNoticeUrl = '',
@@ -51,7 +68,8 @@ class DevToolsSettings {
/// Compiled-in source for the backend-independent emergency notice. Must live
/// on infrastructure that is reachable even when MarianumConnect is down.
static const String emergencyNoticeDefaultUrl = 'https://www.marianum-fulda.de/~aushang/marMobile.override';
static const String emergencyNoticeDefaultUrl =
'https://www.marianum-fulda.de/~aushang/marMobile.override';
String? resolveEmergencyNoticeUrl() =>
sanitizeCustomUrl(emergencyNoticeUrl) ??