summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Monk <jmonk@google.com>2016-07-15 14:51:34 -0400
committerJason Monk <jmonk@google.com>2016-07-15 14:52:03 -0400
commit753762c8fa3fae29f20a0fc34531ecef3fef85a9 (patch)
tree460e659fdf6c2effa27f21e5a1b3b26e38323fe2
parent3ed2a52bb108813b871edbce4496339573c936f0 (diff)
Neko: Sort the kitties
Change-Id: I2dc927f9d284cffffddc9b2338dcd9c6f2cf6942 Fixes: 30162430
-rw-r--r--packages/EasterEgg/src/com/android/egg/neko/NekoLand.java18
1 files changed, 17 insertions, 1 deletions
diff --git a/packages/EasterEgg/src/com/android/egg/neko/NekoLand.java b/packages/EasterEgg/src/com/android/egg/neko/NekoLand.java
index 86f813e0647a..3629162cdd47 100644
--- a/packages/EasterEgg/src/com/android/egg/neko/NekoLand.java
+++ b/packages/EasterEgg/src/com/android/egg/neko/NekoLand.java
@@ -24,6 +24,7 @@ import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.graphics.Bitmap;
+import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.media.MediaScannerConnection;
import android.net.Uri;
@@ -50,6 +51,9 @@ import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.List;
public class NekoLand extends Activity implements PrefsListener {
public static boolean DEBUG = false;
@@ -98,7 +102,19 @@ public class NekoLand extends Activity implements PrefsListener {
cats[i] = Cat.create(this);
}
} else {
- cats = mPrefs.getCats().toArray(new Cat[0]);
+ final float[] hsv = new float[3];
+ List<Cat> list = mPrefs.getCats();
+ Collections.sort(list, new Comparator<Cat>() {
+ @Override
+ public int compare(Cat cat, Cat cat2) {
+ Color.colorToHSV(cat.getBodyColor(), hsv);
+ float bodyH1 = hsv[0];
+ Color.colorToHSV(cat2.getBodyColor(), hsv);
+ float bodyH2 = hsv[0];
+ return Float.compare(bodyH1, bodyH2);
+ }
+ });
+ cats = list.toArray(new Cat[0]);
}
mAdapter.setCats(cats);
return cats.length;