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

Commit 5f42cebf authored by Jason Chang's avatar Jason Chang Committed by Android (Google) Code Review
Browse files

Merge "Fix TalkBack announces disruptive announcement in PIN/PWD page." into main

parents 63e919d9 283f7c91
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -560,6 +560,7 @@ public class ChooseLockPassword extends SettingsActivity {
            setupPasswordRequirementsView(headerLayout);

            mPasswordRestrictionView.setLayoutManager(new LinearLayoutManager(getActivity()));
            mPasswordRestrictionView.setAccessibilityLiveRegion(ACCESSIBILITY_LIVE_REGION_POLITE);
            mPasswordEntry = view.findViewById(R.id.password_entry);
            mPasswordEntry.setOnEditorActionListener(this);
            mPasswordEntry.addTextChangedListener(this);
+11 −6
Original line number Diff line number Diff line
@@ -20,9 +20,9 @@ import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.accessibility.AccessibilityNodeInfo;
import android.widget.TextView;

import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;

import com.android.settings.R;
@@ -66,15 +66,20 @@ public class PasswordRequirementAdapter extends
        return mRequirements[position].hashCode();
    }

    @Override
    public void onViewAttachedToWindow(@NonNull PasswordRequirementViewHolder holder) {
        holder.mDescriptionText.announceForAccessibility(holder.mDescriptionText.getText());
    }

    @Override
    public void onBindViewHolder(PasswordRequirementViewHolder holder, int position) {
        final int fontSize = mContext.getResources().getDimensionPixelSize(
                R.dimen.password_requirement_font_size);

        final String requirement = mRequirements[position];
        holder.mDescriptionText.setAccessibilityDelegate(new View.AccessibilityDelegate() {
            @Override
            public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info) {
                super.onInitializeAccessibilityNodeInfo(host, info);
                holder.mDescriptionText.setStateDescription(requirement);
            }
        });

        holder.mDescriptionText.setText(mRequirements[position]);
        if (mIsTooShortError) {
            holder.mDescriptionText.setTextAppearance(R.style.ScreenLockPasswordHintTextFontStyle);