implement Navigation 3 and Movie Details screen

- Update Android Gradle Plugin to 8.9.1 and target SDK to 36.
- Integrate `androidx.navigation3` for Compose-based navigation management.
- Implement a centralized `NavigationManager` and `Route` system (supporting `Home` and `Movie` routes).
- Add a comprehensive Movie Details screen featuring hero images, synopsis, metadata chips, and cast lists.
- Refactor `HomePage` and related components into a dedicated `hu.bbara.purefin.app.home` package.
- Enhance `JellyfinApiClient` with methods to fetch item details and "next up" episodes.
- Update `PurefinActivity` to use `NavDisplay` for handling app navigation and backstack.
- Setup Hilt modules for providing navigation-related dependencies.
This commit is contained in:
2026-01-18 13:34:15 +01:00
parent fd100816cc
commit c5c2c105ee
28 changed files with 1022 additions and 45 deletions

View File

@@ -11,12 +11,12 @@ plugins {
android {
namespace = "hu.bbara.purefin"
compileSdk = 35
compileSdk = 36
defaultConfig {
applicationId = "hu.bbara.purefin"
minSdk = 29
targetSdk = 35
targetSdk = 36
versionCode = 1
versionName = "1.0"
@@ -50,6 +50,7 @@ dependencies {
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.lifecycle.runtime.ktx)
implementation(libs.androidx.lifecycle.viewmodel.compose)
implementation(libs.androidx.lifecycle.viewmodel.navigation3)
implementation(libs.androidx.activity.compose)
implementation(platform(libs.androidx.compose.bom))
implementation(libs.androidx.compose.ui)
@@ -70,6 +71,8 @@ dependencies {
implementation(libs.medi3.ui)
implementation(libs.medi3.exoplayer)
implementation(libs.medi3.ui.compose)
implementation(libs.androidx.navigation3.runtime)
implementation(libs.androidx.navigation3.ui)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)