Repository navigation
Add adaptive foldable two-pane UI with DU60 and refine Vietnamese localization - #229
chiraitori wants to merge 6 commits into
Conversation
[Medium impact] The PR appears safe to merge; the latest change fixes the remaining mini-player alignment finding.
|
…On, and queue undo
|
hello @chiraitori Thank you for this pull request. Homescreen looks kinda off, other than that its looking good, |
|
Thanks for the feedback, @lostf1sh! That makes total sense regarding the nav now playing corners. I'll update that a bit then push a new commit shortly. |
|
@lostf1sh Updated in
|
|
Want your agent to iterate on Greptile's feedback? Start a greploop in Claude Code and it will work through the open comments and keep going until this PR reviews clean. |



What changed
1. Adaptive Foldable & Large-Screen UI (
WindowSizeClassSupport)PlayerNavigationRailfor medium/expanded width displays (>= 600dp), paired with animated rounded corners (animatedRailContentCornerRadius) on the main content container and a centered floating mini-player (460.dp).FullPlayerTwoPaneFoldableContent):minOf(520.dp, maxWidth)) covering the navigation rail for an edge-to-edge full-screen experience.EmbeddedLyricsPaneorEmbeddedQueuePane) on the right.transitionProgressState.value) strictly toModifier.layoutandModifier.graphicsLayer, eliminating per-frame recompositions of the player tree and nestedBoxWithConstraintssubcompositions during pane transitions.EmbeddedLyricsPane: Side-by-side synced/static lyrics with Material 3 Expressive segmented toggle buttons, karaoke line highlighting, timing offset controls, full-screen expansion, and search/import/reset actions.EmbeddedQueuePane: Side-by-side playback queue with active equalizer indicator, drag-to-reorder handles, source pill, and a floating bottom toolbar (shuffle, repeat, sleep timer, playback speed, and queue actions).android:resizeableActivity="true"andconfigChangesinAndroidManifest.xmlso folding/unfolding preserves playback UI state without activity recreation.< 600dp) remain 100% unchanged.2. Vietnamese (
vi) Localization Refinementsvalues-vi/(strings_chrome.xml,strings_screens.xml,strings_settings.xml) so headers, buttons, and dialogs fit cleanly across both compact and foldable layouts without truncation or overflow.Screenshots
Real Hardware Test (Oppo Find N5 — Unfolded Inner Display)
Foldable UI Showcase
Compact / Outer Phone Screen (Unchanged)
Local checks
Result:
:app:compileDebugKotlin— PASSED:app:lintDebug— PASSED:app:testDebugUnitTest— PASSED (BUILD SUCCESSFUL)Acknowledgments
Special thanks to DU60 (dusystem.net) for reporting the original foldable layout issues on the Oppo Find N5, dedicating time to real-hardware testing, and contributing valuable UI/UX feedback for foldable screens.