Commit Graph
28 Commits
Author SHA1 Message Date
zarzet 95e0e3197d feat(lyrics): support multiple vocalists and aligned lyrics 2026-09-26 14:50:05 +07:00
zarzet 33f0811acd fix(lyrics): slow instrumental dot pulse 2026-09-26 12:45:16 +07:00
zarzet 5aad892882 fix(lyrics): pulse instrumental dots in unison 2026-09-26 04:10:00 +07:00
zarzet 0aaef057cd fix(player): preserve lyrics state while switching to queue 2026-09-26 04:09:47 +07:00
zarzet 6d03a8797b fix(player): match paused cover size during panel transitions 2026-09-26 04:09:47 +07:00
zarzet 0e1881d837 fix(lyrics): pulse instrumental countdown dots 2026-09-26 03:50:29 +07:00
zarzet 863d1536dd fix(lyrics): smooth highlight lift and keep romanization still
Ease the lift before each highlight and let it settle more gradually for held words. Keep timed pronunciation and translation lines stationary while preserving their color sweep.
2026-09-26 03:05:34 +07:00
zarzet 8e7e71827c feat(lyrics): animate live previews while scrubbing playback 2026-09-26 01:31:31 +07:00
zarzet b40ba27cd6 feat(lyrics): add countdown dots for instrumental breaks 2026-09-25 21:09:38 +07:00
zarzet 801ab13938 fix(lyrics): keep focus fixed when player controls hide 2026-09-25 21:09:38 +07:00
zarzet 4aad7f03c1 feat(lyrics): add subtle lift to sustained word highlights 2026-09-25 19:31:09 +07:00
zarzet 6598a360b5 fix(lyrics): align pronunciation phrases and improve readability 2026-09-25 18:34:35 +07:00
zarzet 71031fd5ed style(player): reduce paused play glyph without shifting controls 2026-09-25 16:33:06 +07:00
zarzet e09d0c1609 fix(lyrics): hide controls after five seconds only during playback 2026-09-25 16:26:25 +07:00
zarzet fc13a6c7c0 fix(player): move track header with the cover between panels 2026-09-25 16:05:37 +07:00
zarzet 8b85f65874 style(lyrics): use compact liquid glass language menu 2026-09-25 12:02:48 +07:00
zarzet 8103c313d7 feat(lyrics): show songwriter and provider credits after lyrics 2026-09-25 12:01:43 +07:00
zarzet 3ca881b169 feat(lyrics): animate pronunciation and translation visibility
Add a contextual language menu for available lyric supplements in portrait and landscape. Remember independent visibility choices across tracks and player sessions without changing embedded lyrics or download options.

Fade and collapse supplements over 320 ms while interpolating lyric row heights and keeping the active line aligned. Honor reduced motion and control auto-hide; cover menu availability, persistence, animation, and word timing in widget tests.
2026-09-25 10:29:22 +07:00
zarzet 7a8dadf5f9 feat(player): animate artwork transitions and immersive lyrics
Enlarge player artwork and transport controls, morph the cover into the lyrics and queue header, and minimize the player back into the mini player. Keep the larger header actions in lyrics and queue only.

Use larger lyrics with upper focus and progressive blur. Hide idle lyric controls after three seconds, restore them on interaction, and keep the normal player as the landscape entry page.
2026-09-25 01:22:21 +07:00
zarzet ba44bafa92 fix: sync lyric romanization and clear stale selection menus
Preserve romanization and translation metadata through Rust exports and cache, match rounded line times, and retain word endings. Highlight romanization with the main lyric clock in Material and Mornye.

Clear selection overlay ownership safely when collection screens are disposed. Add parser, rendering, cache and overlay lifecycle regression coverage.
2026-09-23 12:42:08 +07:00
zarzet a7717ddfbf perf(player): scope position and contrast rebuilds to controls
Keep playback position updates inside the timeline subtree and notify only artwork foreground controls when contrast changes. Preserve layout and transport state; add regression coverage for stable artwork and transport widgets.
2026-09-20 17:20:52 +07:00
zarzet 0c930c691f fix(player): preserve offline motion artwork and smooth cover changes 2026-09-20 12:20:24 +07:00
zarzet e61ff64adc feat(mornye): cache motion covers and refine player and search
Save album motion videos in app storage during downloads and prefer offline playback with an aspect-aware layout. Add cache management for saved videos.

Center active lyrics on opening, expand lyrics during manual scrolling, and adjust landscape header spacing. Group search rows and skeletons with dividers and remove redundant result icons.

Validation: Flutter analysis clean; 723 tests passed, 4 skipped; iOS simulator build installed.
2026-09-19 17:26:26 +07:00
zarzet 63e1a9b9c8 feat(ui): add Mornye glass theme and adaptive music player
Add a selectable Mornye theme with shared glass controls, dialogs, sheets, notifications, and collection headers while retaining Material components.

Update player artwork, lyrics transitions and highlighting, synchronized rolling time labels, volume controls, and compact navigation. Unify metadata, Library, search, and extension surfaces; preserve restored artwork and report extension load failures.

Validation: full Flutter analyzer clean; 713 tests passed and 4 skipped; pinned Dart formatting and diff checks passed; signed ARM64 and ARM32 release APKs built and verified.
2026-09-19 12:10:10 +07:00
zarzet 29a86b0dc3 feat(player): add sleep timer 2026-08-30 17:23:16 +07:00
zarzet 73051a5feb fix(player): smooth timed lyrics highlighting 2026-08-23 15:06:46 +07:00
zarzet 645a324a5f feat(navigation): add go to album actions 2026-08-01 16:06:08 +07:00
zarzet 6a3a85f7c9 fix(player): refresh lyrics after automatic track changes 2026-08-01 15:38:40 +07:00