浏览代码

SourcePreferencesController: Also call onBindEditText listener set by extension (#6310)

Ivan Iskandar 3 年之前
父节点
当前提交
e51a6d332e

+ 8 - 0
app/src/main/java/androidx/preference/EditTextPreferenceExtensions.kt

@@ -0,0 +1,8 @@
+package androidx.preference
+
+/**
+ * Returns package-private [EditTextPreference.getOnBindEditTextListener]
+ */
+fun EditTextPreference.getOnBindEditTextListener(): EditTextPreference.OnBindEditTextListener? {
+    return onBindEditTextListener
+}

+ 3 - 0
app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/SourcePreferencesController.kt

@@ -19,6 +19,7 @@ import androidx.preference.Preference
 import androidx.preference.PreferenceGroupAdapter
 import androidx.preference.PreferenceManager
 import androidx.preference.PreferenceScreen
+import androidx.preference.getOnBindEditTextListener
 import androidx.recyclerview.widget.LinearLayoutManager
 import eu.kanade.tachiyomi.R
 import eu.kanade.tachiyomi.data.preference.SharedPreferencesDataStore
@@ -117,7 +118,9 @@ class SourcePreferencesController(bundle: Bundle? = null) :
 
                 // Apply incognito IME for EditTextPreference
                 if (pref is EditTextPreference) {
+                    val setListener = pref.getOnBindEditTextListener()
                     pref.setOnBindEditTextListener {
+                        setListener?.onBindEditText(it)
                         it.setIncognito(viewScope)
                     }
                 }