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

Commit b8672529 authored by Aurélien Pomini's avatar Aurélien Pomini Committed by Automerger Merge Worker
Browse files

Merge "Use less clusters for color extraction for small bitmaps" into udc-dev...

Merge "Use less clusters for color extraction for small bitmaps" into udc-dev am: 8452c883 am: e921fc5c

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/22930898



Change-Id: I14cb39c1ad64dd98f60cef7d2a7fcc9e37149fc4
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents c6ba9326 e921fc5c
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -213,9 +213,17 @@ public final class WallpaperColors implements Parcelable {
                    .resizeBitmapArea(MAX_WALLPAPER_EXTRACTION_AREA)
                    .generate();
        } else {
            // in any case, always use between 5 and 128 clusters
            int minClusters = 5;
            int maxClusters = 128;

            // if the bitmap is very small, use bitmapArea/16 clusters instead of 128
            int minPixelsPerCluster = 16;
            int numberOfColors = Math.max(minClusters,
                    Math.min(maxClusters, bitmapArea / minPixelsPerCluster));
            palette = Palette
                    .from(bitmap, new CelebiQuantizer())
                    .maximumColorCount(128)
                    .maximumColorCount(numberOfColors)
                    .resizeBitmapArea(MAX_WALLPAPER_EXTRACTION_AREA)
                    .generate();
        }