From a3fa15e90e14c5a1f33d280384cdf39b3b5c84ef Mon Sep 17 00:00:00 2001 From: Torsten Grote <t@grobox.de> Date: Thu, 30 Aug 2018 12:14:02 -0300 Subject: [PATCH] Blank UnlockActivity when not using fingerprint unlock --- .../briar/android/login/UnlockActivity.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/briar-android/src/main/java/org/briarproject/briar/android/login/UnlockActivity.java b/briar-android/src/main/java/org/briarproject/briar/android/login/UnlockActivity.java index 29155a7266..4bbd3d1d0f 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/login/UnlockActivity.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/login/UnlockActivity.java @@ -29,6 +29,7 @@ import static android.hardware.biometrics.BiometricPrompt.BIOMETRIC_ERROR_LOCKOU import static android.hardware.biometrics.BiometricPrompt.BIOMETRIC_ERROR_LOCKOUT_PERMANENT; import static android.hardware.biometrics.BiometricPrompt.BIOMETRIC_ERROR_USER_CANCELED; import static android.os.Build.VERSION.SDK_INT; +import static android.view.View.INVISIBLE; import static org.briarproject.briar.android.activity.RequestCodes.REQUEST_KEYGUARD_UNLOCK; import static org.briarproject.briar.android.util.UiUtils.hasKeyguardLock; import static org.briarproject.briar.android.util.UiUtils.hasUsableFingerprint; @@ -60,6 +61,12 @@ public class UnlockActivity extends BaseActivity { Button button = findViewById(R.id.unlock); button.setOnClickListener(view -> requestUnlock()); + if (!hasUsableFingerprint(this)) { + getWindow().setBackgroundDrawable(null); + button.setVisibility(INVISIBLE); + findViewById(R.id.image).setVisibility(INVISIBLE); + } + keyguardShown = state != null && state.getBoolean(KEYGUARD_SHOWN); } @@ -140,14 +147,14 @@ public class UnlockActivity extends BaseActivity { errorCode == BIOMETRIC_ERROR_LOCKOUT_PERMANENT) { if (hasKeyguardLock(UnlockActivity.this)) { requestKeyguardUnlock(); - } else { + } else if (errString != null) { // normally fingerprints require a screen lock, but // who knows if that's true for all devices out there Toast.makeText(UnlockActivity.this, errString, Toast.LENGTH_LONG).show(); finish(); } - } else { + } else if (errString != null) { Toast.makeText(UnlockActivity.this, errString, Toast.LENGTH_LONG).show(); } -- GitLab