Add glitchtip for centralized error logging

This commit is contained in:
2026-07-30 02:32:30 +02:00
parent 498ad68e1c
commit c210f80f27
15 changed files with 416 additions and 193 deletions
+19 -4
View File
@@ -4,6 +4,7 @@ import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
import 'package:package_info_plus/package_info_plus.dart';
import 'package:provider/provider.dart';
import 'package:sentry_flutter/sentry_flutter.dart';
import '../models/settings.dart';
import '../utils/app_update_util.dart';
@@ -117,7 +118,13 @@ class _SettingsScreenViewState extends State<SettingsScreenView> {
}
pinLockViewModel.setPinRequired(true);
await context.read<SettingsViewModel>().updatePinRequired(true);
try {
await context.read<SettingsViewModel>().updatePinRequired(true);
} catch (e, stack) {
Sentry.captureException(e, stackTrace: stack);
_showError('Could not save PIN setting.');
}
}
Future<void> _changePin() async {
@@ -156,7 +163,13 @@ class _SettingsScreenViewState extends State<SettingsScreenView> {
}
pinLockViewModel.setPinRequired(false);
await context.read<SettingsViewModel>().updatePinRequired(false);
try {
await context.read<SettingsViewModel>().updatePinRequired(false);
} catch (e, stack) {
Sentry.captureException(e, stackTrace: stack);
_showError('Could not save PIN setting.');
}
}
@override
@@ -317,7 +330,8 @@ class _SettingsScreenViewState extends State<SettingsScreenView> {
}
_showUpdateDialog(update);
} catch (e) {
} catch (e, stack) {
Sentry.captureException(e, stackTrace: stack);
if (!mounted) return;
ScaffoldMessenger.of(
@@ -360,7 +374,8 @@ class _SettingsScreenViewState extends State<SettingsScreenView> {
);
},
);
} catch (e) {
} catch (e, stack) {
Sentry.captureException(e, stackTrace: stack);
if (!mounted) return;
ScaffoldMessenger.of(