Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9cade2cb authored by Hao Dong's avatar Hao Dong Committed by Android (Google) Code Review
Browse files

Merge "Add fingerprint name to delete button content description." into main

parents 983268a2 f2d2de49
Loading
Loading
Loading
Loading
+8 −6
Original line number Original line Diff line number Diff line
@@ -1399,13 +1399,15 @@ public class FingerprintSettings extends SubSettings {
            super.onBindViewHolder(view);
            super.onBindViewHolder(view);
            mView = view.itemView;
            mView = view.itemView;
            mDeleteView = view.itemView.findViewById(R.id.delete_button);
            mDeleteView = view.itemView.findViewById(R.id.delete_button);
            mDeleteView.setOnClickListener(new View.OnClickListener() {
            if (mFingerprint != null) {
                @Override
                mDeleteView.setContentDescription(
                public void onClick(View v) {
                        mDeleteView.getContentDescription()
                                + " " + mFingerprint.getName().toString());
            }
            mDeleteView.setOnClickListener(v -> {
                if (mOnDeleteClickListener != null) {
                if (mOnDeleteClickListener != null) {
                    mOnDeleteClickListener.onDeleteClick(FingerprintPreference.this);
                    mOnDeleteClickListener.onDeleteClick(FingerprintPreference.this);
                }
                }
                }
            });
            });
        }
        }
    }
    }
+16 −0
Original line number Original line Diff line number Diff line
@@ -21,6 +21,7 @@ import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verify;


import android.content.Context;
import android.content.Context;
import android.hardware.fingerprint.Fingerprint;
import android.view.LayoutInflater;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.FrameLayout;
@@ -59,6 +60,21 @@ public class FingerprintPreferenceTest {
        assertThat(mPreference.getSecondTargetResId()).isEqualTo(R.layout.preference_widget_delete);
        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
    @Test
    public void bindAndClickDeleteButton_shouldInvokeOnDeleteListener() {
    public void bindAndClickDeleteButton_shouldInvokeOnDeleteListener() {
        final FrameLayout layout = new FrameLayout(mContext);
        final FrameLayout layout = new FrameLayout(mContext);