feat: use material icons

This commit is contained in:
2026-07-27 00:16:46 -04:00
parent 5930630b2e
commit 2cf02ddcea
7 changed files with 85 additions and 28 deletions
+11 -11
View File
@@ -8,19 +8,19 @@ Status legend: `[ ]` todo · `[~]` in progress · `[x]` done
---
## [ ] 1. Proper icons
## [x] 1. Proper icons
Replace the placeholder unicode glyphs (`GlyphText` in `NowPlayingScreen.kt`
`⏮ ▶ ⏸ ⏭ 🔈`) with real Material icons.
Done. Replaced the placeholder unicode glyphs in `NowPlayingScreen.kt` with real
Material icons (`Icons.Filled.SkipPrevious/PlayArrow/Pause/SkipNext/VolumeUp`,
plus `Repeat`/`Shuffle` leading icons on the chips) from
`androidx.compose.material:material-icons-extended`.
- Preferred source: **Google Material Symbols / Icons**. In Compose the usual
route is the `androidx.compose.material:material-icons-*` artifacts
(`Icons.Filled.PlayArrow`, `SkipNext`, `VolumeUp`, …). `material-icons-core`
covers the common set; `material-icons-extended` has everything but is large —
prefer core, or import only the specific vector assets we use.
- Platform-bundled drawables (`android.R.drawable.ic_media_*`) exist but look
dated and vary by OEM — avoid; bundle our own for a consistent look.
- Adding the dependency means a `deps.json` regen (see README).
- That artifact bundles thousands of vectors, so the **debug** APK grew ~7 MB
(expected — debug can't shrink). Enabled **R8 + resource shrinking** on the
`release` build type, which strips the unused icons: release APK is ~1.2 MB.
- Considered `material-icons-core` (too small — no media icons) and bundling
individual vector drawables (leaner but manual); the extended dep + R8 was the
best effort/quality trade.
## [ ] 2. Settings menu