From 5e89c1c11c2ba2f0a4f5ae031350800d138c8a9b Mon Sep 17 00:00:00 2001 From: arkon Date: Sun, 18 Jul 2021 13:12:47 -0400 Subject: [PATCH] Require Komga to be installed when attempting to setup tracker (closes #5491) (cherry picked from commit a69a8337169798710f9e0cd7072b3fd3be4a5917) --- .../ui/setting/SettingsTrackingController.kt | 14 ++++++++++++-- app/src/main/res/values/strings.xml | 1 + 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsTrackingController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsTrackingController.kt index 095715955..f6dc9e775 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsTrackingController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsTrackingController.kt @@ -4,6 +4,7 @@ import android.app.Activity import android.view.Menu import android.view.MenuInflater import android.view.MenuItem +import android.widget.Toast import androidx.preference.PreferenceGroup import androidx.preference.PreferenceScreen import eu.kanade.tachiyomi.R @@ -26,6 +27,7 @@ import eu.kanade.tachiyomi.util.preference.preferenceCategory import eu.kanade.tachiyomi.util.preference.switchPreference import eu.kanade.tachiyomi.util.preference.titleRes import eu.kanade.tachiyomi.util.system.openInBrowser +import eu.kanade.tachiyomi.util.system.toast import eu.kanade.tachiyomi.widget.preference.LoginPreference import uy.kohesive.injekt.injectLazy import eu.kanade.tachiyomi.data.preference.PreferenceKeys as Keys @@ -81,8 +83,16 @@ class SettingsTrackingController : } trackPreference(trackManager.komga) { - trackManager.komga.loginNoop() - updatePreference(trackManager.komga.id) + val acceptedSources = trackManager.komga.getAcceptedSources() + val hasValidSourceInstalled = sourceManager.getCatalogueSources() + .any { it::class.qualifiedName in acceptedSources } + + if (hasValidSourceInstalled) { + trackManager.komga.loginNoop() + updatePreference(trackManager.komga.id) + } else { + context.toast(R.string.tracker_komga_warning, Toast.LENGTH_LONG) + } } infoPreference(R.string.enhanced_tracking_info) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ffb2ca229..6483f16f6 100755 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -587,6 +587,7 @@ MyAnimeList Kitsu Komga + This tracker is only compatible with the Komga source. Bangumi Shikimori Tracking