From 9e3dd801808f76c7109d8a9cc5ec2222b8292733 Mon Sep 17 00:00:00 2001 From: Danny Baumann Date: Wed, 27 Apr 2016 13:20:08 +0200 Subject: Load palette in background. Change-Id: I03322c552ee1151be14e1d7c4db2a8f493d34580 --- src/com/cyanogenmod/eleven/utils/BitmapWithColors.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/com/cyanogenmod/eleven/utils/BitmapWithColors.java b/src/com/cyanogenmod/eleven/utils/BitmapWithColors.java index a587c84..aaa46f5 100644 --- a/src/com/cyanogenmod/eleven/utils/BitmapWithColors.java +++ b/src/com/cyanogenmod/eleven/utils/BitmapWithColors.java @@ -17,6 +17,7 @@ package com.cyanogenmod.eleven.utils; import android.graphics.Bitmap; import android.graphics.Color; +import android.os.Looper; import android.support.v7.graphics.Palette; import android.support.v7.graphics.Target; import android.util.LruCache; @@ -68,6 +69,12 @@ public class BitmapWithColors { public BitmapWithColors(Bitmap bitmap, int bitmapKey) { mBitmap = bitmap; mBitmapKey = bitmapKey; + + if (Thread.currentThread() != Looper.getMainLooper().getThread()) { + // we're already running in background, so do the + // (costly) palette initialization immediately + loadColorsIfNeeded(); + } } public BitmapWithColors(Bitmap bitmap, int bitmapKey, int vibrantColor, int vibrantDarkColor) { -- cgit v1.2.3