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

Commit 53cd2485 authored by Edgar Wang's avatar Edgar Wang Committed by Android (Google) Code Review
Browse files

Merge "Ensure the learn more string meet Accessibility requirement." into tm-dev

parents 83962ee9 1ac99118
Loading
Loading
Loading
Loading
+11 −37
Original line number Diff line number Diff line
@@ -44,7 +44,6 @@ public class FooterPreference extends Preference {
    int mIconVisibility = View.VISIBLE;
    private CharSequence mContentDescription;
    private CharSequence mLearnMoreText;
    private CharSequence mLearnMoreContentDescription;
    private FooterLearnMoreSpan mLearnMoreSpan;

    public FooterPreference(Context context, AttributeSet attrs) {
@@ -80,9 +79,6 @@ public class FooterPreference extends Preference {
            learnMoreText.setSpan(mLearnMoreSpan, 0,
                    learnMoreText.length(), 0);
            learnMore.setText(learnMoreText);
            if (!TextUtils.isEmpty(mLearnMoreContentDescription)) {
                learnMore.setContentDescription(mLearnMoreContentDescription);
            }
        } else {
            learnMore.setVisibility(View.GONE);
        }
@@ -139,27 +135,6 @@ public class FooterPreference extends Preference {
        }
    }

    /**
     * To set content description of the learn more text. This can use for talkback
     * environment if developer wants to have a customization content.
     *
     * @param learnMoreContentDescription The resource id of the content description.
     */
    public void setLearnMoreContentDescription(CharSequence learnMoreContentDescription) {
        if (!TextUtils.equals(mContentDescription, learnMoreContentDescription)) {
            mLearnMoreContentDescription = learnMoreContentDescription;
            notifyChanged();
        }
    }

    /**
     * Return the content description of learn more link.
     */
    @VisibleForTesting
    CharSequence getLearnMoreContentDescription() {
        return mLearnMoreContentDescription;
    }

    /**
     * Assign an action for the learn more link.
     */
@@ -201,7 +176,7 @@ public class FooterPreference extends Preference {
        private String mKey;
        private CharSequence mTitle;
        private CharSequence mContentDescription;
        private CharSequence mLearnMoreContentDescription;
        private CharSequence mLearnMoreText;

        public Builder(@NonNull Context context) {
            mContext = context;
@@ -260,25 +235,24 @@ public class FooterPreference extends Preference {
        }

        /**
         * To set content description of the learn more text. This can use for talkback
         * To set learn more string of the learn more text. This can use for talkback
         * environment if developer wants to have a customization content.
         *
         * @param learnMoreContentDescription The resource id of the content description.
         * @param learnMoreText The resource id of the learn more string.
         */
        public Builder setLearnMoreContentDescription(CharSequence learnMoreContentDescription) {
            mLearnMoreContentDescription = learnMoreContentDescription;
        public Builder setLearnMoreText(CharSequence learnMoreText) {
            mLearnMoreText = learnMoreText;
            return this;
        }

        /**
         * To set content description of the {@link FooterPreference}. This can use for talkback
         * To set learn more string of the {@link FooterPreference}. This can use for talkback
         * environment if developer wants to have a customization content.
         *
         * @param learnMoreContentDescriptionResId The resource id of the content description.
         * @param learnMoreTextResId The resource id of the learn more string.
         */
        public Builder setLearnMoreContentDescription(
                @StringRes int learnMoreContentDescriptionResId) {
            mLearnMoreContentDescription = mContext.getText(learnMoreContentDescriptionResId);
        public Builder setLearnMoreText(@StringRes int learnMoreTextResId) {
            mLearnMoreText = mContext.getText(learnMoreTextResId);
            return this;
        }

@@ -301,8 +275,8 @@ public class FooterPreference extends Preference {
                footerPreference.setContentDescription(mContentDescription);
            }

            if (!TextUtils.isEmpty(mLearnMoreContentDescription)) {
                footerPreference.setLearnMoreContentDescription(mLearnMoreContentDescription);
            if (!TextUtils.isEmpty(mLearnMoreText)) {
                footerPreference.setLearnMoreText(mLearnMoreText);
            }
            return footerPreference;
        }
+0 −7
Original line number Diff line number Diff line
@@ -73,13 +73,6 @@ public class FooterPreferenceTest {
        assertThat(mFooterPreference.getContentDescription()).isEqualTo("test");
    }

    @Test
    public void setLearnMoreContentDescription_contentSet_shouldGetSameContentDescription() {
        mFooterPreference.setLearnMoreContentDescription("test");

        assertThat(mFooterPreference.getLearnMoreContentDescription()).isEqualTo("test");
    }

    @Test
    public void setLearnMoreAction_actionSet_shouldGetAction() {
        mFooterPreference.setLearnMoreAction(v -> {