mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-11-04 16:18:55 +01:00 
			
		
		
		
	Add battery not low restriction for global updates (closes #6980)
This commit is contained in:
		@@ -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
 | 
			
		||||
@@ -43,6 +44,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>(
 | 
			
		||||
 
 | 
			
		||||
@@ -4,6 +4,7 @@ import eu.kanade.tachiyomi.R
 | 
			
		||||
 | 
			
		||||
const val DEVICE_ONLY_ON_WIFI = "wifi"
 | 
			
		||||
const val DEVICE_CHARGING = "ac"
 | 
			
		||||
const val DEVICE_BATTERY_NOT_LOW = "battery_not_low"
 | 
			
		||||
 | 
			
		||||
const val MANGA_NON_COMPLETED = "manga_ongoing"
 | 
			
		||||
const val MANGA_HAS_UNREAD = "manga_fully_read"
 | 
			
		||||
 
 | 
			
		||||
@@ -11,6 +11,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.MANGA_HAS_UNREAD
 | 
			
		||||
@@ -159,8 +160,8 @@ class SettingsLibraryController : SettingsController() {
 | 
			
		||||
            multiSelectListPreference {
 | 
			
		||||
                bindTo(preferences.libraryUpdateDeviceRestriction())
 | 
			
		||||
                titleRes = R.string.pref_library_update_restriction
 | 
			
		||||
                entriesRes = arrayOf(R.string.connected_to_wifi, R.string.charging)
 | 
			
		||||
                entryValues = arrayOf(DEVICE_ONLY_ON_WIFI, DEVICE_CHARGING)
 | 
			
		||||
                entriesRes = arrayOf(R.string.connected_to_wifi, R.string.charging, R.string.battery_not_low)
 | 
			
		||||
                entryValues = arrayOf(DEVICE_ONLY_ON_WIFI, DEVICE_CHARGING, DEVICE_BATTERY_NOT_LOW)
 | 
			
		||||
 | 
			
		||||
                visibleIf(preferences.libraryUpdateInterval()) { it > 0 }
 | 
			
		||||
 | 
			
		||||
@@ -177,6 +178,7 @@ class SettingsLibraryController : SettingsController() {
 | 
			
		||||
                            when (it) {
 | 
			
		||||
                                DEVICE_ONLY_ON_WIFI -> context.getString(R.string.connected_to_wifi)
 | 
			
		||||
                                DEVICE_CHARGING -> context.getString(R.string.charging)
 | 
			
		||||
                                DEVICE_BATTERY_NOT_LOW -> context.getString(R.string.battery_not_low)
 | 
			
		||||
                                else -> it
 | 
			
		||||
                            }
 | 
			
		||||
                        }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user