Add fingerprint name to delete button content description.
Test: atest FingerprintPreferenceTest Bug: 308671557 Change-Id: I5a7d402835124a50fd1268745eca1e28c865dc18
This commit is contained in:
@@ -1399,12 +1399,14 @@ public class FingerprintSettings extends SubSettings {
|
||||
super.onBindViewHolder(view);
|
||||
mView = view.itemView;
|
||||
mDeleteView = view.itemView.findViewById(R.id.delete_button);
|
||||
mDeleteView.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if (mOnDeleteClickListener != null) {
|
||||
mOnDeleteClickListener.onDeleteClick(FingerprintPreference.this);
|
||||
}
|
||||
if (mFingerprint != null) {
|
||||
mDeleteView.setContentDescription(
|
||||
mDeleteView.getContentDescription()
|
||||
+ " " + mFingerprint.getName().toString());
|
||||
}
|
||||
mDeleteView.setOnClickListener(v -> {
|
||||
if (mOnDeleteClickListener != null) {
|
||||
mOnDeleteClickListener.onDeleteClick(FingerprintPreference.this);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@@ -21,6 +21,7 @@ import static com.google.common.truth.Truth.assertThat;
|
||||
import static org.mockito.Mockito.verify;
|
||||
|
||||
import android.content.Context;
|
||||
import android.hardware.fingerprint.Fingerprint;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.FrameLayout;
|
||||
@@ -59,6 +60,21 @@ public class FingerprintPreferenceTest {
|
||||
assertThat(mPreference.getSecondTargetResId()).isEqualTo(R.layout.preference_widget_delete);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void deleteContentDescription() {
|
||||
final FrameLayout layout = new FrameLayout(mContext);
|
||||
LayoutInflater.from(mContext).inflate(mPreference.getSecondTargetResId(), layout, true);
|
||||
final String fingerprintName = "fingerprint test";
|
||||
mPreference.setFingerprint(new Fingerprint(fingerprintName, 0, 0));
|
||||
final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(layout);
|
||||
mPreference.onBindViewHolder(holder);
|
||||
|
||||
final View view = layout.findViewById(R.id.delete_button);
|
||||
String expectedContentDescription =
|
||||
mContext.getString(R.string.delete) + " " + fingerprintName;
|
||||
assertThat(view.getContentDescription().toString()).isEqualTo(expectedContentDescription);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void bindAndClickDeleteButton_shouldInvokeOnDeleteListener() {
|
||||
final FrameLayout layout = new FrameLayout(mContext);
|
||||
|
Reference in New Issue
Block a user