diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 80a40d3..a98fb81 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -4,6 +4,7 @@ diff --git a/.idea/misc.xml b/.idea/misc.xml index 25b9e42..e837843 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,4 +1,6 @@ + + diff --git a/app/src/main/java/com/mobyle/abbay/presentation/booklist/BooksListScreen.kt b/app/src/main/java/com/mobyle/abbay/presentation/booklist/BooksListScreen.kt index 79abce3..b65110e 100644 --- a/app/src/main/java/com/mobyle/abbay/presentation/booklist/BooksListScreen.kt +++ b/app/src/main/java/com/mobyle/abbay/presentation/booklist/BooksListScreen.kt @@ -100,6 +100,8 @@ import java.util.Date private const val AUTO_DENIAL_THRESHOLD = 300 +private const val UPDATE_PROGRESS_REFRESH_RATE = 3 + @OptIn(ExperimentalPermissionsApi::class) @Composable fun BooksListScreen( @@ -247,6 +249,8 @@ fun BooksListScreen( } LaunchedEffectAndCollect(viewModel.isPlaying) { + var count = 0 + while (it == true) { selectedBook?.let { if (player.isPlaying) { @@ -258,7 +262,13 @@ fun BooksListScreen( } } + if (count == UPDATE_PROGRESS_REFRESH_RATE) { + viewModel.updateBookList() + count = 0 + } + delay(1000) + count++ } } @@ -273,10 +283,6 @@ fun BooksListScreen( }) } - LifecycleEventEffect(event = Lifecycle.Event.ON_PAUSE) { - viewModel.updateBookList() - } - LaunchedEffect(selectedBook?.id) { if (selectedBook?.hasError == true) { player.stop() diff --git a/build.gradle b/build.gradle index 566110d..32f1952 100644 --- a/build.gradle +++ b/build.gradle @@ -1,7 +1,7 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. plugins { - id 'com.android.library' version '8.2.1' apply false - id("com.android.application") version "8.2.1" apply false + id 'com.android.library' version '8.11.2' apply false + id("com.android.application") version '8.11.2' apply false id("org.jetbrains.kotlin.android") version "1.9.0" apply false id 'com.google.dagger.hilt.android' version '2.48' apply false id 'org.jetbrains.kotlin.plugin.serialization' version '1.8.20' apply false diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 054803b..7b6c160 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ #Sat Jun 17 13:44:46 GMT-03:00 2023 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists