Merge "Fix that display size and text preview is going blank while scrolling the page in landscape view." into tm-qpr-dev am: 71c3e06bea
am: dace33e3c3
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19997091 Change-Id: I2de86b0a6b8eac29e04fb8ce6c77750d88321322 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -42,6 +42,8 @@ import java.util.Objects;
|
||||
class TextReadingPreviewController extends BasePreferenceController implements
|
||||
PreviewSizeSeekBarController.ProgressInteractionListener {
|
||||
private static final String TAG = "TextReadingPreviewCtrl";
|
||||
private static final int LAYER_INITIAL_INDEX = 0;
|
||||
private static final int FRAME_INITIAL_INDEX = 0;
|
||||
static final int[] PREVIEW_SAMPLE_RES_IDS = new int[]{
|
||||
R.layout.accessibility_text_reading_preview_app_grid,
|
||||
R.layout.screen_zoom_preview_1,
|
||||
@@ -108,25 +110,15 @@ class TextReadingPreviewController extends BasePreferenceController implements
|
||||
final PreviewPagerAdapter pagerAdapter = new PreviewPagerAdapter(mContext, isLayoutRtl,
|
||||
PREVIEW_SAMPLE_RES_IDS, createConfig(origConfig));
|
||||
mPreviewPreference.setPreviewAdapter(pagerAdapter);
|
||||
mPreviewPreference.setCurrentItem(isLayoutRtl ? PREVIEW_SAMPLE_RES_IDS.length - 1 : 0);
|
||||
pagerAdapter.setPreviewLayer(/* newLayerIndex= */ 0,
|
||||
/* currentLayerIndex= */ 0,
|
||||
/* currentFrameIndex= */ 0, /* animate= */ false);
|
||||
mPreviewPreference.setCurrentItem(
|
||||
isLayoutRtl ? PREVIEW_SAMPLE_RES_IDS.length - 1 : FRAME_INITIAL_INDEX);
|
||||
pagerAdapter.setPreviewLayer(getPagerIndex(), LAYER_INITIAL_INDEX,
|
||||
FRAME_INITIAL_INDEX, /* animate= */ false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void notifyPreferenceChanged() {
|
||||
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)}.
|
||||
final int pagerIndex = fontSizeProgress * displayDataSize + displaySizeProgress;
|
||||
|
||||
mPreviewPreference.notifyPreviewPagerChanged(pagerIndex);
|
||||
mPreviewPreference.notifyPreviewPagerChanged(getPagerIndex());
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -174,6 +166,15 @@ class TextReadingPreviewController extends BasePreferenceController implements
|
||||
choreographer.postFrameCallbackDelayed(mCommit, commitDelayMs);
|
||||
}
|
||||
|
||||
private int getPagerIndex() {
|
||||
final int displayDataSize = mDisplaySizeData.getValues().size();
|
||||
|
||||
// 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;
|
||||
}
|
||||
|
||||
private void tryCommitFontSizeConfig() {
|
||||
final int fontProgress = mFontSizePreference.getProgress();
|
||||
if (fontProgress != mLastFontProgress) {
|
||||
|
Reference in New Issue
Block a user