diff --git a/app/src/main/java/com/github/libretube/ui/preferences/InstanceSettings.kt b/app/src/main/java/com/github/libretube/ui/preferences/InstanceSettings.kt index c45444408..0b4fd1596 100644 --- a/app/src/main/java/com/github/libretube/ui/preferences/InstanceSettings.kt +++ b/app/src/main/java/com/github/libretube/ui/preferences/InstanceSettings.kt @@ -126,6 +126,13 @@ class InstanceSettings : BasePreferenceFragment() { .show(childFragmentManager, DeleteAccountDialog::class.java.name) true } + + findPreference(PreferenceKeys.FULL_LOCAL_MODE)?.setOnPreferenceChangeListener { _, newValue -> + // when the full local mode gets enabled, the fetch instance is no longer used and replaced + // fully by local extraction. thus, the user has to be logged out from the fetch instance + if (newValue == true && !authInstanceToggle.isChecked) logoutAndUpdateUI() + true + } } private suspend fun initInstancesPref(