SpotiFLAC-Mobile/lib/services
zarzet bfb0cad603 feat: add field selection dialog for bulk re-enrich metadata
Add a bottom sheet dialog that lets users choose which metadata field
groups to update during bulk re-enrich (cover, lyrics, album/album
artist, track/disc number, date/ISRC, genre/label/copyright).

Backend (Go):
- Filter FLAC Metadata struct and FFmpeg metadata map by selected
  update_fields so non-selected groups preserve existing file values
- Guard Deezer extended metadata fetch with shouldUpdateField(extra)
- Title/Artist are never overwritten by re-enrich (search keys only)
- enrichedMeta response only includes selected field groups

Frontend (Dart):
- New re_enrich_field_dialog.dart bottom sheet with checkboxes
- FFmpegService embed methods gain preserveMetadata param that uses
  -map_metadata 0 instead of -1 to preserve non-selected tags
- Hide selection overlay/bar before showing dialog, restore on cancel
- Fix setState-after-dispose guard in cancel branches

Cleanup:
- Remove dead code in library_tracks_folder_screen.dart
- Fix use_build_context_synchronously in main_shell.dart
- Suppress false-positive use_null_aware_elements lints
- Update l10n label from 'Title, Artist, Album' to 'Album, Album Artist'
2026-04-13 23:32:13 +07:00
..
apk_downloader.dart refactor: code cleanup and improvements 2026-01-17 09:07:29 +07:00
app_state_database.dart refactor: enable strict analysis options and fix type safety across codebase 2026-03-27 19:28:42 +07:00
cover_cache_manager.dart refactor: remove redundant comments and fix setMetadataSource bug 2026-03-18 01:12:16 +07:00
csv_import_service.dart refactor: enable strict analysis options and fix type safety across codebase 2026-03-27 19:28:42 +07:00
download_request_payload.dart feat: add artist tag mode setting with split Vorbis support and improve library scan progress 2026-04-13 23:32:12 +07:00
downloaded_embedded_cover_resolver.dart chore: rebuild dev history without streaming-era commits 2026-02-27 13:48:44 +07:00
ffmpeg_service.dart feat: add field selection dialog for bulk re-enrich metadata 2026-04-13 23:32:13 +07:00
history_database.dart refactor: enable strict analysis options and fix type safety across codebase 2026-03-27 19:28:42 +07:00
library_collections_database.dart refactor: enable strict analysis options and fix type safety across codebase 2026-03-27 19:28:42 +07:00
library_database.dart perf: lazy extension VM init, incremental startup maintenance, and UI optimizations 2026-03-25 19:55:02 +07:00
local_track_redownload_service.dart fix: skip tracks already in FLAC from queue-as-FLAC selection and fix local album track list widget identity 2026-03-17 15:02:19 +07:00
notification_service.dart i18n: extract hardcoded strings into l10n keys 2026-04-13 23:32:11 +07:00
platform_bridge.dart fix: prefer local file for cover/lyrics save and update build dependencies 2026-04-13 23:32:13 +07:00
share_intent_service.dart refactor: enable strict analysis options and fix type safety across codebase 2026-03-27 19:28:42 +07:00
shell_navigation_service.dart refactor: route spotify URLs through extensions 2026-04-13 23:32:11 +07:00
update_checker.dart refactor: enable strict analysis options and fix type safety across codebase 2026-03-27 19:28:42 +07:00