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
This commit is contained in:
Peter Liang
2022-09-29 14:10:05 +08:00
committed by Menghan Li
parent 2be7d6f16b
commit 8ca60482c2

View File

@@ -112,7 +112,9 @@ class TextReadingPreviewController extends BasePreferenceController implements
mPreviewPreference.setPreviewAdapter(pagerAdapter); mPreviewPreference.setPreviewAdapter(pagerAdapter);
mPreviewPreference.setCurrentItem( mPreviewPreference.setCurrentItem(
isLayoutRtl ? PREVIEW_SAMPLE_RES_IDS.length - 1 : FRAME_INITIAL_INDEX); 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); FRAME_INITIAL_INDEX, /* animate= */ false);
} }
@@ -168,11 +170,13 @@ class TextReadingPreviewController extends BasePreferenceController implements
private int getPagerIndex() { private int getPagerIndex() {
final int displayDataSize = mDisplaySizeData.getValues().size(); 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, // 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 // boolean)} behavior, here also needs the same design. In addition, please also refer to
// the {@link #createConfig(Configuration)}. // the {@link #createConfig(Configuration)}.
return mLastFontProgress * displayDataSize + mLastDisplayProgress; return fontSizeProgress * displayDataSize + displaySizeProgress;
} }
private void tryCommitFontSizeConfig() { private void tryCommitFontSizeConfig() {