Fix preview screen crashing and glitches for

Display / Font size
Bug: 28223545
Bug: 28223533
Bug: 28210654
Bug: 28210242
Bug: 28208955
Bug: 27699996

Change-Id: I80339dabbd089db8a6c6a80645baabb9b4cad00e
This commit is contained in:
Noah Wang
2016-04-15 13:49:12 -07:00
parent 50669fa3e8
commit 35a95617fd
12 changed files with 232 additions and 185 deletions

View File

@@ -156,21 +156,19 @@ public abstract class PreviewSeekBarPreferenceFragment extends SettingsPreferenc
}
mPreviewPager = (ViewPager) content.findViewById(R.id.preview_pager);
if (mPreviewPager != null) {
mPreviewPagerAdapter = new PreviewPagerAdapter(context, isLayoutRtl,
mPreviewSampleResIds, configurations);
mPreviewPager.setAdapter(mPreviewPagerAdapter);
mPreviewPager.setCurrentItem(isLayoutRtl ? mPreviewSampleResIds.length - 1 : 0);
mPreviewPager.addOnPageChangeListener(mPreviewPageChangeListener);
mPreviewPagerAdapter = new PreviewPagerAdapter(context, isLayoutRtl,
mPreviewSampleResIds, configurations);
mPreviewPager.setAdapter(mPreviewPagerAdapter);
mPreviewPager.setCurrentItem(isLayoutRtl ? mPreviewSampleResIds.length - 1 : 0);
mPreviewPager.addOnPageChangeListener(mPreviewPageChangeListener);
mPageIndicator = (DotsPageIndicator) content.findViewById(R.id.page_indicator);
if (mPreviewSampleResIds.length > 1) {
mPageIndicator.setViewPager(mPreviewPager);
mPageIndicator.setVisibility(View.VISIBLE);
mPageIndicator.setOnPageChangeListener(mPageIndicatorPageChangeListener);
} else {
mPageIndicator.setVisibility(View.GONE);
}
mPageIndicator = (DotsPageIndicator) content.findViewById(R.id.page_indicator);
if (mPreviewSampleResIds.length > 1) {
mPageIndicator.setViewPager(mPreviewPager);
mPageIndicator.setVisibility(View.VISIBLE);
mPageIndicator.setOnPageChangeListener(mPageIndicatorPageChangeListener);
} else {
mPageIndicator.setVisibility(View.GONE);
}
setPreviewLayer(mInitialIndex, false);
@@ -191,11 +189,9 @@ public abstract class PreviewSeekBarPreferenceFragment extends SettingsPreferenc
mLabel.setText(mEntries[index]);
mSmaller.setEnabled(index > 0);
mLarger.setEnabled(index < mEntries.length - 1);
if (mPreviewPager != null) {
setPagerIndicatorContentDescription(mPreviewPager.getCurrentItem());
mPreviewPagerAdapter.setPreviewLayer(index, mCurrentIndex,
mPreviewPager.getCurrentItem(), animate);
}
setPagerIndicatorContentDescription(mPreviewPager.getCurrentItem());
mPreviewPagerAdapter.setPreviewLayer(index, mCurrentIndex,
mPreviewPager.getCurrentItem(), animate);
mCurrentIndex = index;
}