Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d6fea86c authored by Santiago Etchebehere's avatar Santiago Etchebehere
Browse files

Use PreloadWallpapersLayoutListener again

During refactor, we lost the usage of
PreloadWallpapersLayoutListener which meant we were not
caching wallpaper previews, causing flicker.

Fixes: 133431281

Change-Id: I85bb0a855069f3f2d265d9dba32c43fa28687595
parent 91f4a1b4
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -328,12 +328,15 @@ public class ThemeFragment extends ToolbarFragment {
                    ? res.getDrawable(R.drawable.theme_cover_scrim_custom, activity.getTheme())
                    : res.getDrawable(R.drawable.theme_cover_scrim, activity.getTheme());

            WallpaperPreviewLayoutListener wallpaperListener = new WallpaperPreviewLayoutListener(
                    theme, previewInfo, coverScrim);

            addPage(new ThemeCoverPage(activity, theme.getTitle(),
                    previewInfo.resolveAccentColor(res), previewInfo.icons,
                    previewInfo.headlineFontFamily, previewInfo.bottomSheeetCornerRadius,
                    previewInfo.shapeDrawable, previewInfo.shapeAppIcons, editClickListener,
                    mColorButtonIds, mColorTileIds, mColorTileIconIds, mShapeIconIds,
                    new WallpaperPreviewLayoutListener(theme, previewInfo, coverScrim)));
                    wallpaperListener, coverCardLayoutListener));
            addPage(new ThemePreviewPage(activity, R.string.preview_name_font, R.drawable.ic_font,
                    R.layout.preview_card_font_content,
                    previewInfo.resolveAccentColor(res)) {
+10 −4
Original line number Diff line number Diff line
@@ -90,7 +90,7 @@ abstract class ThemePreviewPage extends PreviewPage {
        private final Resources mRes;
        private String mTitle;
        private OnClickListener mEditClickListener;
        private final OnLayoutChangeListener mListener;
        private final OnLayoutChangeListener[] mListeners;
        private final int mCornerRadius;
        private final ColorStateList mTintList;

@@ -100,7 +100,7 @@ abstract class ThemePreviewPage extends PreviewPage {
                List<Drawable> shapeAppIcons,
                OnClickListener editClickListener,
                int[] colorButtonIds, int[] colorTileIds, int[][] colorTileIconIds,
                int[] shapeIconIds, OnLayoutChangeListener wallpaperListener) {
                int[] shapeIconIds, OnLayoutChangeListener... wallpaperListeners) {
            super(context, 0, 0, R.layout.preview_card_cover_content, accentColor);
            mRes = context.getResources();
            mTitle = title;
@@ -114,7 +114,7 @@ abstract class ThemePreviewPage extends PreviewPage {
            mColorTileIds = colorTileIds;
            mColorTileIconIds = colorTileIconIds;
            mShapeIconIds = shapeIconIds;
            mListener = wallpaperListener;
            mListeners = wallpaperListeners;
            // Color QS icons:
            int controlGreyColor = mRes.getColor(R.color.control_grey, null);
            mTintList = new ColorStateList(
@@ -136,8 +136,14 @@ abstract class ThemePreviewPage extends PreviewPage {
            if (card == null) {
                return;
            }
            if (mListeners != null) {
                for (OnLayoutChangeListener listener : mListeners) {
                    if (listener != null) {
                        card.addOnLayoutChangeListener(listener);
                    }
                }
            }

            card.addOnLayoutChangeListener(mListener);
            if (forceRebind) {
                card.requestLayout();
            }