Merge pull request #478 from alexbakker/fix-bioprompt-oneplus

Let Android handle the lifecycle of BiometricPrompt
This commit is contained in:
Michael Schättgen 2020-06-18 22:47:27 +02:00 committed by GitHub
commit db681273e6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 17 deletions

View file

@ -144,7 +144,7 @@ public abstract class AegisActivity extends AppCompatActivity implements AegisAp
* the vault was locked by an external trigger while the Activity was still open.
*/
private boolean isOrphan() {
return !(this instanceof MainActivity) && _app.isVaultLocked();
return !(this instanceof MainActivity) && !(this instanceof AuthActivity) && _app.isVaultLocked();
}
protected Theme getCurrentTheme() {

View file

@ -145,6 +145,10 @@ public class AuthActivity extends AegisActivity {
biometricsButton.setOnClickListener(v -> {
showBiometricPrompt();
});
if (_bioKey != null) {
showBiometricPrompt();
}
}
@Override
@ -196,13 +200,7 @@ public class AuthActivity extends AegisActivity {
public void onResume() {
super.onResume();
if (_bioKey != null) {
if (_prefs.isPasswordReminderNeeded()) {
focusPasswordField();
} else {
showBiometricPrompt();
}
} else {
if (_bioKey == null || _prefs.isPasswordReminderNeeded()) {
focusPasswordField();
}
}
@ -252,15 +250,6 @@ public class AuthActivity extends AegisActivity {
_bioPrompt.authenticate(info, cryptoObj);
}
@Override
public void onPause() {
super.onPause();
if (_bioPrompt != null) {
_bioPrompt.cancelAuthentication();
}
}
private void finish(MasterKey key, boolean isSlotRepaired) {
VaultFileCredentials creds = new VaultFileCredentials(key, _slots);