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

Commit e781ad70 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: 5efe153d

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



Change-Id: I84f9e2c0087de719aba9f779ee369d4a7c6d4bf3
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 0d4379dd 5efe153d
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();
        }