refactor: Improve code formatting and replace print with debugPrint for error logging

This commit is contained in:
2026-07-02 23:47:52 +02:00
parent 9b6d92c372
commit b201da0552
8 changed files with 75 additions and 67 deletions
+13 -11
View File
@@ -101,7 +101,8 @@ class _NotesAppState extends State<NotesApp>
}
final AppPalette palette = _activePalette();
final String message = _syncErrorMessage ?? _syncDetailMessage ?? 'Sincronizando...';
final String message =
_syncErrorMessage ?? _syncDetailMessage ?? 'Sincronizando...';
final double? progress = _syncProgress;
final IconData icon;
final Color accentColor;
@@ -138,7 +139,9 @@ class _NotesAppState extends State<NotesApp>
child: Container(
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 10),
decoration: BoxDecoration(
border: Border(top: BorderSide(color: accentColor.withValues(alpha: 0.45))),
border: Border(
top: BorderSide(color: accentColor.withValues(alpha: 0.45)),
),
),
child: Column(
mainAxisSize: MainAxisSize.min,
@@ -591,17 +594,15 @@ class _NotesAppState extends State<NotesApp>
if (available) {
bool activated = await _vaultService.enableBiometricProtection();
while (!activated) {
// Ask the user to retry or skip
final BuildContext? dialogCtx = _navigatorKey.currentContext;
if (dialogCtx == null) {
break;
}
// Ask the user to retry or skip - pass currentContext directly in builder
final NavigatorState? navigator = _navigatorKey.currentState;
final NavigatorState navigator = Navigator.of(dialogCtx);
if (navigator == null) break;
if (!mounted) return;
final bool? retry = await showDialog<bool>(
context: dialogCtx,
builder: (BuildContext context) {
context: context,
builder: (BuildContext dialogContext) {
final AppPalette palette = _activePalette();
return AlertDialog(
backgroundColor: palette.cardBackground,
@@ -1076,7 +1077,8 @@ class _NotesAppState extends State<NotesApp>
switchOutCurve: Curves.easeInCubic,
transitionBuilder:
(Widget child, Animation<double> animation) {
final Animation<Offset> slideAnimation = Tween<Offset>(
final Animation<Offset> slideAnimation =
Tween<Offset>(
begin: const Offset(0.0, 0.35),
end: Offset.zero,
).animate(animation);
+1 -1
View File
@@ -676,7 +676,7 @@ Future<List<Map<String, Object?>>> _decryptNoteBatch(
masterKey,
);
} catch (e) {
print('Failed to decrypt note ${note['id']}: $e');
debugPrint('Failed to decrypt note ${note['id']}: $e');
}
} else {
decryptedTitle = '';
+7 -9
View File
@@ -316,7 +316,7 @@ class _HomeScreenState extends State<HomeScreen> {
),
boxShadow: [
BoxShadow(
color: color.withOpacity(0.18),
color: color.withValues(alpha: 0.0),
blurRadius: 10,
offset: const Offset(0, 4),
),
@@ -362,7 +362,7 @@ class _HomeScreenState extends State<HomeScreen> {
height: 50,
decoration: BoxDecoration(
color: selectedIconCodePoint == icon.codePoint
? previewColor.withOpacity(0.14)
? previewColor.withValues(alpha: 0.14)
: palette.fill,
borderRadius: BorderRadius.circular(14),
border: Border.all(
@@ -613,10 +613,10 @@ class _HomeScreenState extends State<HomeScreen> {
duration: const Duration(milliseconds: 160),
padding: const EdgeInsets.all(2),
decoration: BoxDecoration(
color: selected ? color.withOpacity(0.05) : Colors.transparent,
color: selected ? color.withValues(alpha: 0.05) : Colors.transparent,
borderRadius: BorderRadius.circular(12),
border: Border.all(
color: selected ? color.withOpacity(0.42) : Colors.transparent,
color: selected ? color.withValues(alpha: 0.42) : Colors.transparent,
width: selected ? 1 : 1,
),
),
@@ -945,7 +945,7 @@ class _HomeScreenState extends State<HomeScreen> {
style: IconButton.styleFrom(
backgroundColor: _selectedCategoryId == null
? Colors.transparent
: palette.accent.withOpacity(0.08),
: palette.accent.withValues(alpha: 0.08),
shape: const CircleBorder(),
),
icon: Stack(
@@ -1067,7 +1067,7 @@ class _HomeScreenState extends State<HomeScreen> {
padding: const EdgeInsets.fromLTRB(10, 10, 10, 14),
buildDefaultDragHandles: false,
itemCount: visibleNotes.length,
onReorder: _handleReorder,
onReorderItem: _handleReorder,
footer: Padding(
padding: const EdgeInsets.only(top: 4, bottom: 72),
child: Center(
@@ -1104,8 +1104,7 @@ class _HomeScreenState extends State<HomeScreen> {
Widget _buildEmptyDetailPane(BuildContext context) {
final AppPalette palette = _paletteOf(context);
return Container(
child: Center(
return Center(
child: Text(
'Selecciona una nota o\ncrea una nueva para empezar.',
textAlign: TextAlign.center,
@@ -1115,7 +1114,6 @@ class _HomeScreenState extends State<HomeScreen> {
fontWeight: FontWeight.w500,
),
),
),
);
}
+22 -15
View File
@@ -98,12 +98,13 @@ class _SettingsScreenState extends State<SettingsScreen> {
SnackBar(content: Text('Error al borrar los datos: $error')),
);
} finally {
if (!mounted) return;
if (mounted) {
setState(() {
_isBusy = false;
});
}
}
}
Future<void> _confirmAndDeleteServerData() async {
final bool? confirmed = await showDialog<bool>(
@@ -168,12 +169,13 @@ class _SettingsScreenState extends State<SettingsScreen> {
SnackBar(content: Text('Error al borrar la info del servidor: $error')),
);
} finally {
if (!mounted) return;
if (mounted) {
setState(() {
_isServerDeleting = false;
});
}
}
}
Future<void> _forceSync() async {
if (_isBusy || _isSyncing) {
@@ -199,13 +201,13 @@ class _SettingsScreenState extends State<SettingsScreen> {
SnackBar(content: Text('Error al forzar la sincronización: $error')),
);
} finally {
if (!mounted) return;
if (mounted) {
setState(() {
_isSyncing = false;
});
}
}
}
Future<void> _selectThemeColor(Color color) async {
if (_isThemeSaving || _selectedSeedColor == color) {
@@ -576,26 +578,31 @@ class _SettingsScreenState extends State<SettingsScreen> {
const SizedBox(height: 8),
Column(
children: [
RadioListTile<ThemeMode>(
title: const Text('Seguir modo del sistema'),
value: ThemeMode.system,
RadioGroup<ThemeMode>(
groupValue: _selectedThemeMode,
onChanged: (ThemeMode? v) =>
_selectThemeMode(ThemeMode.system),
onChanged: (ThemeMode? v) {
if (v != null) {
_selectThemeMode(v);
}
},
child: Column(
children: [
RadioListTile<ThemeMode>(
title: const Text(
'Seguir modo del sistema',
),
value: ThemeMode.system,
),
RadioListTile<ThemeMode>(
title: const Text('Modo claro'),
value: ThemeMode.light,
groupValue: _selectedThemeMode,
onChanged: (ThemeMode? v) =>
_selectThemeMode(ThemeMode.light),
),
RadioListTile<ThemeMode>(
title: const Text('Modo oscuro'),
value: ThemeMode.dark,
groupValue: _selectedThemeMode,
onChanged: (ThemeMode? v) =>
_selectThemeMode(ThemeMode.dark),
),
],
),
),
],
),
+1 -1
View File
@@ -72,7 +72,7 @@ class NoteCard extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.center,
children: [
if (categoryIcon != null) ...[
Container(
SizedBox(
width: 18,
height: 18,
child: Icon(
+1 -1
View File
@@ -359,7 +359,7 @@ packages:
source: hosted
version: "6.0.0"
flutter_localizations:
dependency: transitive
dependency: "direct main"
description: flutter
source: sdk
version: "0.0.0"
+3
View File
@@ -50,6 +50,9 @@ dependencies:
uuid: ^4.0.0
flutter_quill: ^11.5.1
flutter_localizations:
sdk: flutter
dev_dependencies:
flutter_test:
sdk: flutter
-2
View File
@@ -2,8 +2,6 @@ import 'package:flutter/material.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:flutter_quill/flutter_quill.dart';
import 'package:notas/models/category.dart';
import 'package:notas/models/note.dart';
import 'package:notas/screens/note_editor_screen.dart';