diff options
author | David Magno <david.magno@sony.com> | 2023-01-25 11:30:28 +0100 |
---|---|---|
committer | alk3pInjection <webmaster@raspii.tech> | 2023-04-22 17:15:45 +0800 |
commit | d704a4b31843e7575cc418c1c3b3c04e5ea3ddbc (patch) | |
tree | 579ddfb59aaed72c150682bb8e94045fb32ff569 /src | |
parent | 5ef300f02d9643c44935bf537545a24684a84247 (diff) |
Crash when clicking Fingerprint Settings 'Learn more' link
NPE when clicking the 'Learn more' link if no helpIntent has
been provided.
Also hide the link icon on the Fingerprint Enroll Introduction
screen if no link/text has been provided.
Bug: 266530752
Test: Manual
Change-Id: I7f16abe5b171a759603329400f840449ea527456
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java | 15 | ||||
-rw-r--r-- | src/com/android/settings/biometrics/fingerprint/FingerprintSettings.java | 4 |
2 files changed, 13 insertions, 6 deletions
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java index 08fb5c0c5e..20b204c87d 100644 --- a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java +++ b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java @@ -28,9 +28,11 @@ import android.hardware.fingerprint.FingerprintSensorPropertiesInternal; import android.os.Bundle; import android.text.Html; import android.text.method.LinkMovementMethod; +import android.text.TextUtils; import android.util.Log; import android.view.View; import android.widget.ImageView; +import android.widget.LinearLayout; import android.widget.ScrollView; import android.widget.TextView; @@ -107,10 +109,15 @@ public class FingerprintEnrollIntroduction extends BiometricEnrollIntroduction { footerMessage5.setText(getFooterMessage5()); footerMessage6.setText(getFooterMessage6()); - final TextView footerLink = findViewById(R.id.footer_learn_more); - footerLink.setMovementMethod(LinkMovementMethod.getInstance()); - footerLink.setText(Html.fromHtml(getString(getFooterLearnMore()), - Html.FROM_HTML_MODE_LEGACY)); + if (TextUtils.isEmpty(getString(getFooterLearnMore()))) { + final LinearLayout learnMoreFooter = findViewById(R.id.learn_more); + learnMoreFooter.setVisibility(View.GONE); + } else { + final TextView footerLink = findViewById(R.id.footer_learn_more); + footerLink.setMovementMethod(LinkMovementMethod.getInstance()); + footerLink.setText(Html.fromHtml(getString(getFooterLearnMore()), + Html.FROM_HTML_MODE_LEGACY)); + } if (mCanAssumeUdfps) { footerMessage6.setVisibility(View.VISIBLE); diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintSettings.java b/src/com/android/settings/biometrics/fingerprint/FingerprintSettings.java index bbb4f45b70..3d192111c6 100644 --- a/src/com/android/settings/biometrics/fingerprint/FingerprintSettings.java +++ b/src/com/android/settings/biometrics/fingerprint/FingerprintSettings.java @@ -419,8 +419,8 @@ public class FingerprintSettings extends SubSettings { activity, DevicePolicyManager.KEYGUARD_DISABLE_FINGERPRINT, mUserId); final Intent helpIntent = HelpUtils.getHelpIntent( activity, getString(getHelpResource()), activity.getClass().getName()); - final View.OnClickListener learnMoreClickListener = (v) -> - activity.startActivityForResult(helpIntent, 0); + final View.OnClickListener learnMoreClickListener = helpIntent != null ? (v) -> + activity.startActivityForResult(helpIntent, 0) : null; mFooterColumns.clear(); if (admin != null) { |