diff --git a/src/com/android/settings/accessibility/PaletteListPreference.java b/src/com/android/settings/accessibility/PaletteListPreference.java index eec8b5a6cde..c29113cd116 100644 --- a/src/com/android/settings/accessibility/PaletteListPreference.java +++ b/src/com/android/settings/accessibility/PaletteListPreference.java @@ -24,6 +24,7 @@ import static com.android.settings.accessibility.AccessibilityUtil.getScreenWidt import static com.google.common.primitives.Ints.max; import android.content.Context; +import android.content.res.ColorStateList; import android.graphics.Paint.FontMetrics; import android.graphics.drawable.GradientDrawable; import android.util.AttributeSet; @@ -39,6 +40,7 @@ import androidx.preference.Preference; import androidx.preference.PreferenceViewHolder; import com.android.settings.R; +import com.android.settingslib.Utils; import com.google.common.primitives.Floats; import com.google.common.primitives.Ints; @@ -128,6 +130,8 @@ public final class PaletteListPreference extends Preference { final List paletteColors = getPaletteColors(context); final List paletteData = getPaletteData(context); + final ColorStateList textColor = + Utils.getColorAttr(getContext(), android.R.attr.textColorPrimary); final float textPadding = context.getResources().getDimension(R.dimen.accessibility_layout_margin_start_end); final String maxLengthData = @@ -143,6 +147,7 @@ public final class PaletteListPreference extends Preference { for (int i = 0; i < paletteData.size(); ++i) { final TextView textView = new TextView(context); textView.setText(paletteData.get(i)); + textView.setTextColor(textColor); textView.setHeight(paletteItemHeight); textView.setPaddingRelative(Math.round(textPadding), 0, 0, 0); textView.setGravity(Gravity.CENTER_VERTICAL); diff --git a/tests/robotests/src/com/android/settings/accessibility/PaletteListPreferenceTest.java b/tests/robotests/src/com/android/settings/accessibility/PaletteListPreferenceTest.java index 759b180206f..8ff3a0e6639 100644 --- a/tests/robotests/src/com/android/settings/accessibility/PaletteListPreferenceTest.java +++ b/tests/robotests/src/com/android/settings/accessibility/PaletteListPreferenceTest.java @@ -16,17 +16,20 @@ package com.android.settings.accessibility; -import static org.junit.Assert.assertEquals; +import static com.google.common.truth.Truth.assertThat; import android.content.Context; +import android.content.res.ColorStateList; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.TextView; import androidx.preference.PreferenceViewHolder; import androidx.test.core.app.ApplicationProvider; import com.android.settings.R; +import com.android.settingslib.Utils; import org.junit.Before; import org.junit.Test; @@ -53,12 +56,20 @@ public final class PaletteListPreferenceTest { @Test public void initPaletteView_success() { + final int expectedCount = + mContext.getResources().getStringArray(R.array.setting_palette_data).length; + final ColorStateList expectedTextColor = + Utils.getColorAttr(mContext, android.R.attr.textColorPrimary); + mPaletteListPreference.onBindViewHolder(mPreferenceViewHolder); final ViewGroup viewGroup = mPreferenceViewHolder.itemView.findViewById(R.id.palette_view); - final int expectedCount = - mContext.getResources().getStringArray(R.array.setting_palette_data).length; - assertEquals(expectedCount, viewGroup.getChildCount()); + final int childCount = viewGroup.getChildCount(); + assertThat(childCount).isEqualTo(expectedCount); + for (int i = 0; i < childCount; i++) { + final TextView textView = (TextView) viewGroup.getChildAt(i); + assertThat(textView.getTextColors()).isEqualTo(expectedTextColor); + } } }