diff --git a/app/build.gradle.kts b/app/build.gradle.kts index ae304e1..8d903c6 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -61,6 +61,7 @@ dependencies { implementation(libs.bcprov.jdk15on) implementation(libs.converter.gson) implementation(libs.gson) + implementation(libs.androidx.media3.exoplayer) implementation(libs.androidx.media3.ui) implementation(libs.androidx.media3.common) diff --git a/app/src/main/java/com/acitelight/aether/model/VideoRecordDao.kt b/app/src/main/java/com/acitelight/aether/model/VideoRecordDao.kt index 7bff4e3..76f16a0 100644 --- a/app/src/main/java/com/acitelight/aether/model/VideoRecordDao.kt +++ b/app/src/main/java/com/acitelight/aether/model/VideoRecordDao.kt @@ -22,6 +22,6 @@ interface VideoRecordDao { @Delete suspend fun delete(rec: VideoRecord) - @Query("SELECT * FROM videorecord WHERE id = :id") - suspend fun getById(id: String): VideoRecord? + @Query("SELECT * FROM videorecord WHERE id = :id and name = :klass") + suspend fun get(id: String, klass: String): VideoRecord? } \ No newline at end of file diff --git a/app/src/main/java/com/acitelight/aether/ui/theme/Theme.kt b/app/src/main/java/com/acitelight/aether/ui/theme/Theme.kt index d87164e..eda726f 100644 --- a/app/src/main/java/com/acitelight/aether/ui/theme/Theme.kt +++ b/app/src/main/java/com/acitelight/aether/ui/theme/Theme.kt @@ -130,8 +130,8 @@ fun generateColorScheme(primaryColor: Color, isDarkMode: Boolean): ColorScheme { } } -private val DarkColorScheme = generateColorScheme(Color(0xFF4A6F9F), isDarkMode = true) -private val LightColorScheme = generateColorScheme(Color(0xFF4A6F9F), isDarkMode = false) +private val DarkColorScheme = generateColorScheme(Color(0xFF36A0FF), isDarkMode = true) +private val LightColorScheme = generateColorScheme(Color(0xFF36A0FF), isDarkMode = false) @Composable fun AetherTheme( diff --git a/app/src/main/java/com/acitelight/aether/view/VideoScreen.kt b/app/src/main/java/com/acitelight/aether/view/VideoScreen.kt index a752b1e..b68d948 100644 --- a/app/src/main/java/com/acitelight/aether/view/VideoScreen.kt +++ b/app/src/main/java/com/acitelight/aether/view/VideoScreen.kt @@ -252,7 +252,7 @@ fun VideoScreen( Card( Modifier .fillMaxHeight() - .width(200.dp) + .width(250.dp) .align(Alignment.CenterEnd), shape = RoundedCornerShape(8.dp), colors = CardDefaults.cardColors(containerColor = colorScheme.surface) @@ -294,13 +294,13 @@ fun CatalogueItemRow( .padding(4.dp) .padding(horizontal = 4.dp) .heightIn(min = 28.dp) - .width(200.dp), + .width(250.dp), shape = RoundedCornerShape(8.dp), colors = CardDefaults.cardColors(containerColor = colorScheme.primary) ) { Text( text = item.second, - fontSize = 18.sp, + fontSize = 14.sp, maxLines = 1, textAlign = TextAlign.Center, modifier = Modifier @@ -408,7 +408,7 @@ fun VideoCard( text = video.video.name, fontSize = 12.sp, fontWeight = FontWeight.Bold, - maxLines = 2, + maxLines = 4, modifier = Modifier .padding(8.dp) .background(Color.Transparent) diff --git a/app/src/main/java/com/acitelight/aether/viewModel/VideoPlayerViewModel.kt b/app/src/main/java/com/acitelight/aether/viewModel/VideoPlayerViewModel.kt index 81cb586..4e80b2d 100644 --- a/app/src/main/java/com/acitelight/aether/viewModel/VideoPlayerViewModel.kt +++ b/app/src/main/java/com/acitelight/aether/viewModel/VideoPlayerViewModel.kt @@ -158,7 +158,7 @@ class VideoPlayerViewModel @Inject constructor( if(!renderedFirst) { viewModelScope.launch { - val ii = database.userDao().getById(video!!.id) + val ii = database.userDao().get(video!!.id, video!!.klass) if(ii != null) { _player!!.seekTo(ii.position) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index b24400e..b248c21 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -22,6 +22,7 @@ activityCompose = "1.11.0" composeBom = "2025.09.00" media3Common = "1.8.0" media3Exoplayer = "1.8.0" +media3ExoplayerFfmpeg = "1.8.0" media3Ui = "1.8.0" navigationCompose = "2.9.4" okhttp = "5.1.0"