diff options
author | Santiago Etchebehere <santie@google.com> | 2022-05-02 21:32:04 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2022-05-02 21:32:04 +0000 |
commit | c596620f599f6cb25c2b71f31f09c863e87116eb (patch) | |
tree | a30b68c3c726a964e2703640f0090b11c66464a2 | |
parent | fb9667900a44a7e4c606d6d394f1605b3254147b (diff) | |
parent | 4c74f6f9fe81f1d8a1071e235c76c73b29ed3ff8 (diff) | |
download | ThemePicker-c596620f599f6cb25c2b71f31f09c863e87116eb.tar.gz |
Make reloading color options thread safe am: 4c74f6f9fe
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/ThemePicker/+/18030545
Change-Id: I384d91e9dbe9b048e74fd4fd785c9ac370b4a5e5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | src/com/android/customization/model/color/ColorSectionController.java | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/com/android/customization/model/color/ColorSectionController.java b/src/com/android/customization/model/color/ColorSectionController.java index 9241e8e1..80bc3c6e 100644 --- a/src/com/android/customization/model/color/ColorSectionController.java +++ b/src/com/android/customization/model/color/ColorSectionController.java @@ -83,9 +83,9 @@ public class ColorSectionController implements CustomizationSectionController<Co private final WallpaperColorsViewModel mWallpaperColorsViewModel; private final LifecycleOwner mLifecycleOwner; private final ColorSectionAdapter mColorSectionAdapter = new ColorSectionAdapter(); - private final List<ColorOption> mWallpaperColorOptions = new ArrayList<>(); - private final List<ColorOption> mPresetColorOptions = new ArrayList<>(); + private List<ColorOption> mWallpaperColorOptions = new ArrayList<>(); + private List<ColorOption> mPresetColorOptions = new ArrayList<>(); private ViewPager2 mColorSectionViewPager; private ColorOption mSelectedColor; private SeparatedTabLayout mTabLayout; @@ -207,16 +207,17 @@ public class ColorSectionController implements CustomizationSectionController<Co mColorManager.fetchOptions(new CustomizationManager.OptionsFetchedListener<ColorOption>() { @Override public void onOptionsLoaded(List<ColorOption> options) { - mWallpaperColorOptions.clear(); - mPresetColorOptions.clear(); - + List<ColorOption> wallpaperColorOptions = new ArrayList<>(); + List<ColorOption> presetColorOptions = new ArrayList<>(); for (ColorOption option : options) { if (option instanceof ColorSeedOption) { - mWallpaperColorOptions.add(option); + wallpaperColorOptions.add(option); } else if (option instanceof ColorBundle) { - mPresetColorOptions.add(option); + presetColorOptions.add(option); } } + mWallpaperColorOptions = wallpaperColorOptions; + mPresetColorOptions = presetColorOptions; mSelectedColor = findActiveColorOption(mWallpaperColorOptions, mPresetColorOptions); mTabLayout.post(()-> setUpColorViewPager()); |