Add battery not low restriction for global updates

Co-Authored-By: arkon <4098258+arkon@users.noreply.github.com>
This commit is contained in:
Jays2Kings 2022-05-02 14:08:43 -04:00
parent 361e5c4dc2
commit fd7f87b2eb
4 changed files with 7 additions and 2 deletions

View file

@ -8,6 +8,7 @@ import androidx.work.PeriodicWorkRequestBuilder
import androidx.work.WorkManager
import androidx.work.Worker
import androidx.work.WorkerParameters
import eu.kanade.tachiyomi.data.preference.DEVICE_BATTERY_NOT_LOW
import eu.kanade.tachiyomi.data.preference.DEVICE_CHARGING
import eu.kanade.tachiyomi.data.preference.DEVICE_ONLY_ON_WIFI
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
@ -44,6 +45,7 @@ class LibraryUpdateJob(private val context: Context, workerParams: WorkerParamet
val constraints = Constraints.Builder()
.setRequiredNetworkType(NetworkType.CONNECTED)
.setRequiresCharging(DEVICE_CHARGING in restrictions)
.setRequiresBatteryNotLow(DEVICE_BATTERY_NOT_LOW in restrictions)
.build()
val request = PeriodicWorkRequestBuilder<LibraryUpdateJob>(

View file

@ -8,3 +8,4 @@ const val MANGA_NON_READ = "manga_started"
// Device
const val DEVICE_ONLY_ON_WIFI = "wifi"
const val DEVICE_CHARGING = "ac"
const val DEVICE_BATTERY_NOT_LOW = "battery_not_low"

View file

@ -5,6 +5,7 @@ import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.data.database.DatabaseHelper
import eu.kanade.tachiyomi.data.database.models.Category
import eu.kanade.tachiyomi.data.library.LibraryUpdateJob
import eu.kanade.tachiyomi.data.preference.DEVICE_BATTERY_NOT_LOW
import eu.kanade.tachiyomi.data.preference.DEVICE_CHARGING
import eu.kanade.tachiyomi.data.preference.DEVICE_ONLY_ON_WIFI
import eu.kanade.tachiyomi.data.preference.DelayedLibrarySuggestionsJob
@ -132,8 +133,8 @@ class SettingsLibraryController : SettingsController() {
multiSelectListPreferenceMat(activity) {
bindTo(preferences.libraryUpdateDeviceRestriction())
titleRes = R.string.library_update_restriction
entriesRes = arrayOf(R.string.wifi, R.string.charging)
entryValues = listOf(DEVICE_ONLY_ON_WIFI, DEVICE_CHARGING)
entriesRes = arrayOf(R.string.wifi, R.string.charging, R.string.battery_not_low)
entryValues = listOf(DEVICE_ONLY_ON_WIFI, DEVICE_CHARGING, DEVICE_BATTERY_NOT_LOW)
preSummaryRes = R.string.restrictions_
noSelectionRes = R.string.none

View file

@ -990,6 +990,7 @@
<string name="center">Center</string>
<string name="change">Change</string>
<string name="charging">Charging</string>
<string name="battery_not_low">Battery not low</string>
<string name="clear">Clear</string>
<string name="clear_filters">Clear filters</string>
<string name="close">Close</string>