fix some issues

This commit is contained in:
IndusAryan 2024-03-23 12:49:43 +05:30
parent bbcf02487c
commit caf415a411

View file

@ -264,13 +264,13 @@ class SettingsAccount : PreferenceFragmentCompat(), BiometricAuthenticator.Biome
private fun updateAuthPreference(enabled: Boolean) { private fun updateAuthPreference(enabled: Boolean) {
val biometricKey = getString(R.string.biometric_key) val biometricKey = getString(R.string.biometric_key)
PreferenceManager.getDefaultSharedPreferences(context ?: requireContext()).edit() PreferenceManager.getDefaultSharedPreferences(context ?: return).edit()
.putBoolean(biometricKey, enabled).apply() .putBoolean(biometricKey, enabled).apply()
findPreference<SwitchPreferenceCompat>(biometricKey)?.isChecked = enabled findPreference<SwitchPreferenceCompat>(biometricKey)?.isChecked = enabled
} }
override fun onAuthenticationError() { override fun onAuthenticationError() {
updateAuthPreference(!isAuthEnabled(context ?: requireContext())) updateAuthPreference(!isAuthEnabled(context ?: return))
} }
override fun onAuthenticationSuccess() { override fun onAuthenticationSuccess() {
@ -296,19 +296,18 @@ class SettingsAccount : PreferenceFragmentCompat(), BiometricAuthenticator.Biome
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
hideKeyboard() hideKeyboard()
setPreferencesFromResource(R.xml.settings_account, rootKey) setPreferencesFromResource(R.xml.settings_account, rootKey)
// hide preference on tvs and emulators // hide preference on tvs and emulators
if (!isLayout(PHONE)) { getPref(R.string.biometric_key)?.isEnabled = isLayout(PHONE)
getPref(R.string.biometric_key)?.isEnabled = false
}
getPref(R.string.biometric_key)?.setOnPreferenceClickListener { getPref(R.string.biometric_key)?.setOnPreferenceClickListener {
val ctx = context ?: return@setOnPreferenceClickListener false val ctx = context ?: return@setOnPreferenceClickListener false
if (deviceHasPasswordPinLock(ctx)) { if (deviceHasPasswordPinLock(ctx)) {
startBiometricAuthentication( startBiometricAuthentication(
activity?: requireActivity(), activity?: return@setOnPreferenceClickListener false,
R.string.biometric_authentication_title, R.string.biometric_authentication_title,
false false
) )
promptInfo?.let { promptInfo?.let {
authCallback = this authCallback = this