Convert EH settings to FlowPrefrences

This commit is contained in:
Jobobby04
2020-05-10 19:22:10 -04:00
parent 60a0303d7f
commit 6e1da22353
22 changed files with 123 additions and 146 deletions
+1 -2
View File
@@ -11,7 +11,6 @@ import eu.kanade.tachiyomi.data.database.models.MangaImpl
import eu.kanade.tachiyomi.data.database.models.Track
import eu.kanade.tachiyomi.data.library.LibraryUpdateJob
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.getOrDefault
import eu.kanade.tachiyomi.data.updater.UpdaterJob
import eu.kanade.tachiyomi.extension.ExtensionUpdateJob
import exh.source.BlacklistedSources
@@ -33,7 +32,7 @@ object EXHMigrations {
*/
fun upgrade(preferences: PreferencesHelper): Boolean {
val context = preferences.context
val oldVersion = preferences.eh_lastVersionCode().getOrDefault()
val oldVersion = preferences.eh_lastVersionCode().get()
try {
if (oldVersion < BuildConfig.VERSION_CODE) {
// Fresh install
@@ -16,7 +16,6 @@ import eu.kanade.tachiyomi.data.database.models.Chapter
import eu.kanade.tachiyomi.data.database.models.Manga
import eu.kanade.tachiyomi.data.library.LibraryUpdateNotifier
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.getOrDefault
import eu.kanade.tachiyomi.source.SourceManager
import eu.kanade.tachiyomi.source.online.all.EHentai
import eu.kanade.tachiyomi.util.chapter.syncChaptersWithSource
@@ -350,7 +349,7 @@ class EHentaiUpdateWorker : JobService(), CoroutineScope {
cancelBackground(context)
val preferences = Injekt.get<PreferencesHelper>()
val interval = prefInterval ?: preferences.eh_autoUpdateFrequency().getOrDefault()
val interval = prefInterval ?: preferences.eh_autoUpdateFrequency().get()
if (interval > 0) {
val restrictions = preferences.eh_autoUpdateRequirements()!!
val acRestriction = "ac" in restrictions
@@ -9,7 +9,6 @@ import eu.kanade.tachiyomi.data.database.models.Category
import eu.kanade.tachiyomi.data.database.models.Manga
import eu.kanade.tachiyomi.data.database.models.MangaCategory
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.getOrDefault
import eu.kanade.tachiyomi.source.SourceManager
import eu.kanade.tachiyomi.source.online.all.EHentai
import eu.kanade.tachiyomi.util.lang.launchUI
@@ -68,7 +67,7 @@ class FavoritesSyncHelper(val context: Context) {
private fun beginSync() {
// Check if logged in
if (!prefs.enableExhentai().getOrDefault()) {
if (!prefs.enableExhentai().get()) {
status.onNext(FavoritesSyncStatus.Error("Please log in!"))
return
}
@@ -130,7 +129,7 @@ class FavoritesSyncHelper(val context: Context) {
db.inTransaction {
status.onNext(FavoritesSyncStatus.Processing("Calculating remote changes"))
val remoteChanges = storage.getChangedRemoteEntries(realm, favorites.first)
val localChanges = if (prefs.eh_readOnlySync().getOrDefault()) {
val localChanges = if (prefs.eh_readOnlySync().get()) {
null // Do not build local changes if they are not going to be applied
} else {
status.onNext(FavoritesSyncStatus.Processing("Calculating local changes"))
@@ -248,7 +247,7 @@ class FavoritesSyncHelper(val context: Context) {
if (!explicitlyRetryExhRequest(10, request)) {
val errorString = "Unable to add gallery to remote server: '${gallery.title}' (GID: ${gallery.gid})!"
if (prefs.eh_lenientSync().getOrDefault()) {
if (prefs.eh_lenientSync().get()) {
errorList += errorString
} else {
status.onNext(FavoritesSyncStatus.Error(errorString))
@@ -298,7 +297,7 @@ class FavoritesSyncHelper(val context: Context) {
if (!explicitlyRetryExhRequest(10, request)) {
val errorString = "Unable to delete galleries from the remote servers!"
if (prefs.eh_lenientSync().getOrDefault()) {
if (prefs.eh_lenientSync().get()) {
errorList += errorString
} else {
status.onNext(FavoritesSyncStatus.Error(errorString))
@@ -386,7 +385,7 @@ class FavoritesSyncHelper(val context: Context) {
is GalleryAddEvent.Fail.UnknownType -> "'${it.title}' (${result.galleryUrl}) is not a valid gallery!"
}
if (prefs.eh_lenientSync().getOrDefault()) {
if (prefs.eh_lenientSync().get()) {
errorList += errorString
} else {
status.onNext(FavoritesSyncStatus.Error(errorString))
@@ -2,7 +2,6 @@ package exh.metadata.metadata
import android.net.Uri
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.getOrDefault
import eu.kanade.tachiyomi.source.model.SManga
import exh.metadata.EX_DATE_FORMAT
import exh.metadata.ONGOING_SUFFIX
@@ -50,7 +49,7 @@ class EHentaiSearchMetadata : RaisedSearchMetadata() {
thumbnailUrl?.let { manga.thumbnail_url = it }
// No title bug?
val titleObj = if (Injekt.get<PreferencesHelper>().useJapaneseTitle().getOrDefault()) {
val titleObj = if (Injekt.get<PreferencesHelper>().useJapaneseTitle().get()) {
altTitle ?: title
} else {
title
@@ -1,7 +1,6 @@
package exh.metadata.metadata
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.getOrDefault
import eu.kanade.tachiyomi.source.model.SManga
import exh.metadata.EX_DATE_FORMAT
import exh.metadata.ONGOING_SUFFIX
@@ -42,7 +41,7 @@ class NHentaiSearchMetadata : RaisedSearchMetadata() {
nhId?.let { manga.url = nhIdToPath(it) }
if (mediaId != null) {
val hqThumbs = Injekt.get<PreferencesHelper>().eh_nh_useHighQualityThumbs().getOrDefault()
val hqThumbs = Injekt.get<PreferencesHelper>().eh_nh_useHighQualityThumbs().get()
typeToExtension(if (hqThumbs) coverImageType else thumbnailImageType)?.let {
manga.thumbnail_url = "https://t.nhentai.net/galleries/$mediaId/${if (hqThumbs) {
"cover"
@@ -1,7 +1,6 @@
package exh.source
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.getOrDefault
import eu.kanade.tachiyomi.source.model.FilterList
import eu.kanade.tachiyomi.source.model.MangasPage
import eu.kanade.tachiyomi.source.model.Page
@@ -217,7 +216,7 @@ class EnhancedHttpSource(
override fun getFilterList() = source().getFilterList()
private fun source(): HttpSource {
return if (prefs.eh_delegateSources().getOrDefault()) {
return if (prefs.eh_delegateSources().get()) {
enchancedSource
} else {
originalSource
@@ -1,7 +1,6 @@
package exh.uconfig
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.getOrDefault
import okhttp3.FormBody
import uy.kohesive.injekt.injectLazy
@@ -13,7 +12,7 @@ class EhUConfigBuilder {
configItems += when (
prefs.imageQuality()
.getOrDefault()
.get()
.toLowerCase()
) {
"ovrs_2400" -> Entry.ImageSize.`2400`
@@ -25,19 +24,19 @@ class EhUConfigBuilder {
else -> Entry.ImageSize.AUTO
}
configItems += if (prefs.useHentaiAtHome().getOrDefault()) {
configItems += if (prefs.useHentaiAtHome().get()) {
Entry.UseHentaiAtHome.YES
} else {
Entry.UseHentaiAtHome.NO
}
configItems += if (prefs.useJapaneseTitle().getOrDefault()) {
configItems += if (prefs.useJapaneseTitle().get()) {
Entry.TitleDisplayLanguage.JAPANESE
} else {
Entry.TitleDisplayLanguage.DEFAULT
}
configItems += if (prefs.eh_useOriginalImages().getOrDefault()) {
configItems += if (prefs.eh_useOriginalImages().get()) {
Entry.UseOriginalImages.YES
} else {
Entry.UseOriginalImages.NO
@@ -16,7 +16,6 @@ import com.github.salomonbrys.kotson.get
import com.github.salomonbrys.kotson.string
import com.google.gson.JsonParser
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.getOrDefault
import eu.kanade.tachiyomi.network.NetworkHelper
import eu.kanade.tachiyomi.network.asObservableSuccess
import eu.kanade.tachiyomi.source.Source
@@ -121,7 +120,7 @@ class BrowserActionActivity : AppCompatActivity() {
// Wait for both inner scripts to be loaded
if (loadedInners >= 2) {
// Attempt to autosolve captcha
if (preferencesHelper.eh_autoSolveCaptchas().getOrDefault()) {
if (preferencesHelper.eh_autoSolveCaptchas().get()) {
webview.post {
// 10 seconds to auto-solve captcha
strictValidationStartTime = System.currentTimeMillis() + 1000 * 10
@@ -140,7 +139,7 @@ class BrowserActionActivity : AppCompatActivity() {
}
}
webview.webViewClient = if (actionName == null && preferencesHelper.eh_autoSolveCaptchas().getOrDefault()) {
webview.webViewClient = if (actionName == null && preferencesHelper.eh_autoSolveCaptchas().get()) {
// Fetch auto-solve credentials early for speed
credentialsObservable = httpClient.newCall(
Request.Builder()
@@ -161,9 +161,9 @@ class LoginController : NucleusController<EhActivityLoginBinding, LoginPresenter
if (memberId == null || passHash == null || igneous == null) return false
// Update prefs
preferenceManager.memberIdVal().set(memberId)
preferenceManager.passHashVal().set(passHash)
preferenceManager.igneousVal().set(igneous)
preferenceManager.memberIdVal().set(memberId!!)
preferenceManager.passHashVal().set(passHash!!)
preferenceManager.igneousVal().set(igneous!!)
return true
}