Skip to content

Commit

Permalink
fix: temporarily disable pre-launch biometric auth (#2803)
Browse files Browse the repository at this point in the history
* fix: temporarily disable pre-launch biometric auth

Completely broken right now and prevents users from opening the app.

Updates #2802

* fix: disable UnusedResources lint
  • Loading branch information
msfjarvis committed Dec 10, 2023
1 parent d00626d commit a04d6fa
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 10 deletions.
4 changes: 2 additions & 2 deletions app/src/main/java/app/passwordstore/ui/main/LaunchActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,14 @@ class LaunchActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val prefs = sharedPrefs
if (prefs.getBoolean(PreferenceKeys.BIOMETRIC_AUTH, false)) {
if (prefs.getBoolean(PreferenceKeys.BIOMETRIC_AUTH_2, false)) {
BiometricAuthenticator.authenticate(this) { result ->
when (result) {
is Result.Success -> {
startTargetActivity(false)
}
is Result.HardwareUnavailableOrDisabled -> {
prefs.edit { remove(PreferenceKeys.BIOMETRIC_AUTH) }
prefs.edit { remove(PreferenceKeys.BIOMETRIC_AUTH_2) }
startTargetActivity(false)
}
is Result.Failure,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,14 +65,15 @@ class GeneralSettings(private val activity: FragmentActivity) : SettingsProvider
defaultValue = false
}

val canAuthenticate = BiometricAuthenticator.canAuthenticate(activity)
switch(PreferenceKeys.BIOMETRIC_AUTH) {
// val canAuthenticate = BiometricAuthenticator.canAuthenticate(activity)
switch(PreferenceKeys.BIOMETRIC_AUTH_2) {
titleRes = R.string.pref_biometric_auth_title
defaultValue = false
enabled = canAuthenticate
summaryRes =
if (canAuthenticate) R.string.pref_biometric_auth_summary
else R.string.pref_biometric_auth_summary_error
enabled = false
// summaryRes =
// if (canAuthenticate) R.string.pref_biometric_auth_summary
// else R.string.pref_biometric_auth_summary_error
summary = "Temporarily disabled due to a bug, see issue 2802"
onClick {
enabled = false
val isChecked = checked
Expand All @@ -81,15 +82,15 @@ class GeneralSettings(private val activity: FragmentActivity) : SettingsProvider
when (result) {
is Result.Success -> {
// Apply the changes
putBoolean(PreferenceKeys.BIOMETRIC_AUTH, checked)
putBoolean(PreferenceKeys.BIOMETRIC_AUTH_2, checked)
enabled = true
}
is Result.Retry -> {}
else -> {
// If any error occurs, revert back to the previous
// state. This
// catch-all clause includes the cancellation case.
putBoolean(PreferenceKeys.BIOMETRIC_AUTH, !checked)
putBoolean(PreferenceKeys.BIOMETRIC_AUTH_2, !checked)
checked = !isChecked
enabled = true
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ object PreferenceKeys {
const val APP_THEME = "app_theme"
const val AUTOFILL_ENABLE = "autofill_enable"
const val BIOMETRIC_AUTH = "biometric_auth"
const val BIOMETRIC_AUTH_2 = "biometric_auth_delete_soon_please"
@Deprecated(
message = "Use CLEAR_CLIPBOARD_HISTORY instead",
replaceWith = ReplaceWith("PreferenceKeys.CLEAR_CLIPBOARD_HISTORY"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,8 @@ object LintConfig {
disable += "FragmentFieldInjection"
// Too pedantic
disable += "ArgInFormattedQuantityStringRes"
// Biometric strings are temporarily unused due to issue 2802
disable += "UnusedResources"
}
baseline = project.file("lint-baseline.xml")
}
Expand Down

0 comments on commit a04d6fa

Please sign in to comment.