From 8ca60482c22a96c351e08a1e45a7e6d6c73de4f8 Mon Sep 17 00:00:00 2001 From: Peter Liang Date: Thu, 29 Sep 2022 14:10:05 +0800 Subject: [PATCH] Fix that when I go to display size in the settings, the largest size shows the smallest icons. Root cause: Preview didn't instantly be updated when scrolling the Display size. Solution: Get the value from preferences when scrolling, and from the display size data value when initializing. Fix: 248748575 Test: manual test Change-Id: I441766e0fd97ec1ac287d5bd4191693b2490c552 --- .../accessibility/TextReadingPreviewController.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/com/android/settings/accessibility/TextReadingPreviewController.java b/src/com/android/settings/accessibility/TextReadingPreviewController.java index dab57babaed..29faaaa9f20 100644 --- a/src/com/android/settings/accessibility/TextReadingPreviewController.java +++ b/src/com/android/settings/accessibility/TextReadingPreviewController.java @@ -112,7 +112,9 @@ class TextReadingPreviewController extends BasePreferenceController implements mPreviewPreference.setPreviewAdapter(pagerAdapter); mPreviewPreference.setCurrentItem( isLayoutRtl ? PREVIEW_SAMPLE_RES_IDS.length - 1 : FRAME_INITIAL_INDEX); - pagerAdapter.setPreviewLayer(getPagerIndex(), LAYER_INITIAL_INDEX, + final int initialPagerIndex = + mLastFontProgress * mDisplaySizeData.getValues().size() + mLastDisplayProgress; + pagerAdapter.setPreviewLayer(initialPagerIndex, LAYER_INITIAL_INDEX, FRAME_INITIAL_INDEX, /* animate= */ false); } @@ -168,11 +170,13 @@ class TextReadingPreviewController extends BasePreferenceController implements private int getPagerIndex() { final int displayDataSize = mDisplaySizeData.getValues().size(); + final int fontSizeProgress = mFontSizePreference.getProgress(); + final int displaySizeProgress = mDisplaySizePreference.getProgress(); // To be consistent with the {@link PreviewPagerAdapter#setPreviewLayer(int, int, int, // boolean)} behavior, here also needs the same design. In addition, please also refer to // the {@link #createConfig(Configuration)}. - return mLastFontProgress * displayDataSize + mLastDisplayProgress; + return fontSizeProgress * displayDataSize + displaySizeProgress; } private void tryCommitFontSizeConfig() {