zarzet
d882fc292c
l10n: localize settings, store, and metadata UI strings
...
Wire remaining hardcoded strings in about, download region picker, file
organization settings, extension repo snackbars, release type badges,
metadata queue actions, online cover labels, and update changelog fallback.
2026-06-30 05:10:37 +07:00
zarzet
16669d8b7a
feat: show 'Internal' version in debug builds, optimize download timeouts, and fix navigation safety
...
- Add displayVersion getter using kDebugMode: debug shows 'Internal', release shows actual version
- Defer Spotify URL resolution in Deezer downloader until fallback is actually needed
- Unify download timeouts to 24h constant (connection-level timeouts still protect hung connections)
- Fix context shadowing in track metadata options menu and delete dialog
- Use addPostFrameCallback + mounted guards for safer sheet/dialog navigation
2026-03-12 04:02:14 +07:00
zarzet
6388f3a5b8
perf: optimize providers, caching, and reduce rebuilds
...
- Cache SharedPreferences.getInstance() in providers (settings, theme, recent_access)
- Pre-compute download counts in queue provider to avoid repeated filtering
- Add identical() caching for RecentAccessView in HomeTab
- Use selective watching for exploreProvider (sections, greeting, isLoading only)
- Move isYTMusicQuickPicks computation to ExploreSection.fromJson()
- Hoist static RegExp patterns to avoid repeated compilation
- Use batch operations for iOS path migration in history_database
- Replace containsKey+lookup with single lookup in palette_service
- Pre-compute lowercase strings outside filter loops in logger
- Fix _isLoaded race condition in DownloadHistoryNotifier
2026-01-22 03:56:47 +07:00
zarzet
b96233f90b
refactor: code cleanup and improvements
2026-01-17 09:07:29 +07:00
zarzet
f26af38c1e
feat: add multilanguage support (i18n) for English and Indonesian
...
- Add flutter_localizations and intl dependencies
- Create l10n.yaml configuration and ARB files (app_en.arb, app_id.arb)
- Add L10n extension for easy context.l10n access
- Localize all active screens:
- setup_screen, track_metadata_screen, log_screen
- download_settings_page, options_settings_page, appearance_settings_page
- extensions_page, extension_detail_page, extension_details_screen
- about_page, provider_priority_page, metadata_provider_priority_page
- home_tab, queue_tab, store_tab, main_shell
- album_screen, artist_screen, playlist_screen
- downloaded_album_screen, queue_screen
- Localize widgets: update_dialog, download_service_picker
- Technical terms (FLAC, API, Spotify, Tidal, Qobuz, etc.) are NOT translated
- ~900+ localized strings in English, ~660+ in Indonesian
2026-01-16 05:50:11 +07:00
zarzet
b87de1f00a
feat: quality picker with track info, update dialog redesign, finalizing notification fix
...
- Quality picker now shows track name, artist, and cover
- Tap to expand long track titles (icon only shows when truncated)
- Ripple effect follows rounded corners including drag handle
- Update dialog redesigned with Material Expressive 3 style
- Fixed update notification stuck at 100% after download complete
- Ask before download now enabled by default
- Finalizing notification for multi-progress polling
2026-01-03 04:26:19 +07:00
zarzet
33e8ddd758
v1.5.0-hotfix: Fix app signing, add in-app update
2026-01-02 03:36:11 +07:00
zarzet
d227d57545
v1.5.0: UI rework, multi-progress tracking, performance optimizations
2026-01-02 02:54:50 +07:00
zarzet
bd4acdf222
v1.2.0: Track Metadata Screen, Hi-Res fix, Settings navigation fix
2026-01-02 00:10:30 +07:00