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
+16 -14
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,10 +1077,11 @@ class _NotesAppState extends State<NotesApp>
switchOutCurve: Curves.easeInCubic,
transitionBuilder:
(Widget child, Animation<double> animation) {
final Animation<Offset> slideAnimation = Tween<Offset>(
begin: const Offset(0.0, 0.35),
end: Offset.zero,
).animate(animation);
final Animation<Offset> slideAnimation =
Tween<Offset>(
begin: const Offset(0.0, 0.35),
end: Offset.zero,
).animate(animation);
return FadeTransition(
opacity: 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 = '';
+14 -16
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,16 +1104,14 @@ class _HomeScreenState extends State<HomeScreen> {
Widget _buildEmptyDetailPane(BuildContext context) {
final AppPalette palette = _paletteOf(context);
return Container(
child: Center(
child: Text(
'Selecciona una nota o\ncrea una nueva para empezar.',
textAlign: TextAlign.center,
style: TextStyle(
color: palette.textSecondary,
fontSize: 18,
fontWeight: FontWeight.w500,
),
return Center(
child: Text(
'Selecciona una nota o\ncrea una nueva para empezar.',
textAlign: TextAlign.center,
style: TextStyle(
color: palette.textSecondary,
fontSize: 18,
fontWeight: FontWeight.w500,
),
),
);
+39 -32
View File
@@ -98,10 +98,11 @@ class _SettingsScreenState extends State<SettingsScreen> {
SnackBar(content: Text('Error al borrar los datos: $error')),
);
} finally {
if (!mounted) return;
setState(() {
_isBusy = false;
});
if (mounted) {
setState(() {
_isBusy = false;
});
}
}
}
@@ -168,10 +169,11 @@ class _SettingsScreenState extends State<SettingsScreen> {
SnackBar(content: Text('Error al borrar la info del servidor: $error')),
);
} finally {
if (!mounted) return;
setState(() {
_isServerDeleting = false;
});
if (mounted) {
setState(() {
_isServerDeleting = false;
});
}
}
}
@@ -199,11 +201,11 @@ class _SettingsScreenState extends State<SettingsScreen> {
SnackBar(content: Text('Error al forzar la sincronización: $error')),
);
} finally {
if (!mounted) return;
setState(() {
_isSyncing = false;
});
if (mounted) {
setState(() {
_isSyncing = false;
});
}
}
}
@@ -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),
),
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),
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,
),
RadioListTile<ThemeMode>(
title: const Text('Modo oscuro'),
value: 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(