feat(ui): Myne-style UI overhaul — 4 tabs, API fixes, theme
Phase 1: API fixes - Removed health() endpoint (404 on server), replaced with getLibraries()-based check - ProgressUpdateRequest/PlaybackProgressUpdateRequest already have required fields - Fixed ServerStatusMonitor to use getLibraries() instead of health() - cover_url passes through as full URL (no resolveCoverUrl needed) Phase 2: Theme (Myne blue-teal palette) - Replaced Color.kt with Myne palette (primary #0D6681, dark #89D0EE) - Simplified Theme.kt: dynamic color (Android 12+), fallback to static, no custom fonts - Added material-icons-extended dependency Phase 3-4: Navigation + Common components - 4 tabs: Books, Audiobooks, Search, Settings - CustomBottomNavigationItem: pill-shaped, animated text, primary.copy(alpha=0.1f) - CustomTopAppBar: bold 28sp title, divider 2dp, circle back button - BookItemCard: horizontal card, cover + text, surfaceColorAtElevation(3dp), RoundedCornerShape(6dp) - ProgressDots: animated dots loader Phase 5-8: Screens - BooksScreen: loads ebooks from bookshelf-api, LazyVerticalGrid adaptive - AudiobooksScreen: loads audiobooks, shows duration - SearchScreen: OutlinedTextField with RoundedCornerShape(24dp), search via POST /api/v1/search - SettingsScreen: sections (Appearance, Server, About) with toggles and click items Phase 11: NavGraph - NavHost with 4 bottom bar routes ':app:assembleOssDebug' passes. APK deployed.
This commit is contained in:
parent
7411f1bfb5
commit
1b43c9c1ec
20 changed files with 1295 additions and 159 deletions
|
|
@ -226,6 +226,7 @@ dependencies {
|
|||
implementation(libs.androidx.ui.graphics)
|
||||
implementation(libs.androidx.ui.tooling.preview)
|
||||
implementation(libs.androidx.material3)
|
||||
implementation("androidx.compose.material:material-icons-extended:1.7.8")
|
||||
implementation(libs.androidx.material3.window.size.class1.android)
|
||||
implementation(libs.androidx.credentials)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue