summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSantiago Etchebehere <santie@google.com>2022-05-02 21:32:04 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2022-05-02 21:32:04 +0000
commitc596620f599f6cb25c2b71f31f09c863e87116eb (patch)
treea30b68c3c726a964e2703640f0090b11c66464a2
parentfb9667900a44a7e4c606d6d394f1605b3254147b (diff)
parent4c74f6f9fe81f1d8a1071e235c76c73b29ed3ff8 (diff)
downloadThemePicker-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.java15
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());