Add content descriptions for Display size and text previews

Bug: 395882764
Test: manually
Test: atest TextReadingPreviewControllerTest
Test: atest TextReadingPreviewPreferenceTest
Flag: EXEMPT bugfix
Change-Id: Ia8702c3d0bdbbfdd554c945000777fcee6714abe
This commit is contained in:
Candice
2025-03-06 07:11:19 +00:00
parent dde80ef88b
commit 7270567527
6 changed files with 96 additions and 27 deletions

View File

@@ -104,11 +104,13 @@ class TextReadingPreviewController extends BasePreferenceController implements
final boolean isLayoutRtl =
origConfig.getLayoutDirection() == View.LAYOUT_DIRECTION_RTL;
final int[] previewSamples = getPreviewSampleLayouts(mContext);
final int[] previewContentDescriptions = getPreviewSampleContentDescriptions(mContext);
final PreviewPagerAdapter pagerAdapter = new PreviewPagerAdapter(mContext, isLayoutRtl,
previewSamples, createConfig(origConfig));
mPreviewPreference.setPreviewAdapter(pagerAdapter);
mPreviewPreference.setCurrentItem(
isLayoutRtl ? previewSamples.length - 1 : FRAME_INITIAL_INDEX);
mPreviewPreference.setContentDescription(previewContentDescriptions);
final int initialPagerIndex =
mLastFontProgress * mDisplaySizeData.getValues().size() + mLastDisplayProgress;
@@ -188,6 +190,20 @@ class TextReadingPreviewController extends BasePreferenceController implements
return previewSamples;
}
@VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
static int[] getPreviewSampleContentDescriptions(Context context) {
TypedArray typedArray = context.getResources().obtainTypedArray(
R.array.config_text_reading_preview_content_descriptions);
int previewCount = typedArray.length();
int[] previewContentDescriptions = new int[previewCount];
for (int i = 0; i < previewCount; i++) {
previewContentDescriptions[i] =
typedArray.getResourceId(i, R.string.preview_pager_content_description);
}
typedArray.recycle();
return previewContentDescriptions;
}
private int getPagerIndex() {
final int displayDataSize = mDisplaySizeData.getValues().size();
final int fontSizeProgress = mFontSizePreference.getProgress();