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