diff --git a/app/src/main/kotlin/org/koitharu/kotatsu/tracker/work/TrackWorker.kt b/app/src/main/kotlin/org/koitharu/kotatsu/tracker/work/TrackWorker.kt index 1fd2e9f5a..54ff5e78d 100644 --- a/app/src/main/kotlin/org/koitharu/kotatsu/tracker/work/TrackWorker.kt +++ b/app/src/main/kotlin/org/koitharu/kotatsu/tracker/work/TrackWorker.kt @@ -245,10 +245,13 @@ class TrackWorker @AssistedInject constructor( ) : PeriodicWorkScheduler { override suspend fun schedule() { + val frequency = settings.trackerFrequencyFactor + if (frequency <= 0f) { + return unschedule() + } val constraints = createConstraints() val runCount = dbProvider.get().getTracksDao().getTracksCount() val runsPerFullCheck = (runCount / BATCH_SIZE.toFloat()).toIntUp().coerceAtLeast(1) - val frequency = settings.trackerFrequencyFactor val interval = (18 / runsPerFullCheck / frequency).roundToInt().coerceAtLeast(2) val request = PeriodicWorkRequestBuilder(interval.toLong(), TimeUnit.HOURS) .setConstraints(constraints) diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index 3b1f052ce..6610849ea 100644 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -93,6 +93,7 @@ @string/multiple_cbz_files + @string/manual @string/less_frequently @string/system_default @string/more_frequently diff --git a/app/src/main/res/values/constants.xml b/app/src/main/res/values/constants.xml index 9caebbb2a..5e89883f7 100644 --- a/app/src/main/res/values/constants.xml +++ b/app/src/main/res/values/constants.xml @@ -64,6 +64,7 @@ 2 + -1 0.4 1 2