summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher2/ItemInfo.java
diff options
context:
space:
mode:
authorJoe Onorato <joeo@android.com>2010-02-08 13:44:00 -0800
committerJoe Onorato <joeo@android.com>2010-02-12 12:18:40 -0500
commit0589f0f66ce498512c6ee47482c649d88294c9d0 (patch)
tree42d42799a5578bde35a79b18ab8b28d301c663fe /src/com/android/launcher2/ItemInfo.java
parent3e244cf9d2da4fb04ef095f8b752a2a2c6e2f287 (diff)
downloadandroid_packages_apps_Trebuchet-0589f0f66ce498512c6ee47482c649d88294c9d0.tar.gz
android_packages_apps_Trebuchet-0589f0f66ce498512c6ee47482c649d88294c9d0.tar.bz2
android_packages_apps_Trebuchet-0589f0f66ce498512c6ee47482c649d88294c9d0.zip
Split ApplicationInfo into ApplicationInfo which is used for AllAppsView and ShortcutInfo which is
used for the workspace. Consolidate the three icon resampling functions into one. Ensure that the icons stored in LauncherProvider are the right size, so we don't have to resample them each time we load them.
Diffstat (limited to 'src/com/android/launcher2/ItemInfo.java')
-rw-r--r--src/com/android/launcher2/ItemInfo.java31
1 files changed, 18 insertions, 13 deletions
diff --git a/src/com/android/launcher2/ItemInfo.java b/src/com/android/launcher2/ItemInfo.java
index f04880ddd..ca2ea86c8 100644
--- a/src/com/android/launcher2/ItemInfo.java
+++ b/src/com/android/launcher2/ItemInfo.java
@@ -112,21 +112,26 @@ class ItemInfo {
}
}
+ static byte[] flattenBitmap(Bitmap bitmap) {
+ // Try go guesstimate how much space the icon will take when serialized
+ // to avoid unnecessary allocations/copies during the write.
+ int size = bitmap.getWidth() * bitmap.getHeight() * 4;
+ ByteArrayOutputStream out = new ByteArrayOutputStream(size);
+ try {
+ bitmap.compress(Bitmap.CompressFormat.PNG, 100, out);
+ out.flush();
+ out.close();
+ return out.toByteArray();
+ } catch (IOException e) {
+ Log.w("Favorite", "Could not write icon");
+ return null;
+ }
+ }
+
static void writeBitmap(ContentValues values, Bitmap bitmap) {
if (bitmap != null) {
- // Try go guesstimate how much space the icon will take when serialized
- // to avoid unnecessary allocations/copies during the write.
- int size = bitmap.getWidth() * bitmap.getHeight() * 4;
- ByteArrayOutputStream out = new ByteArrayOutputStream(size);
- try {
- bitmap.compress(Bitmap.CompressFormat.PNG, 100, out);
- out.flush();
- out.close();
-
- values.put(LauncherSettings.Favorites.ICON, out.toByteArray());
- } catch (IOException e) {
- Log.w("Favorite", "Could not write icon");
- }
+ byte[] data = flattenBitmap(bitmap);
+ values.put(LauncherSettings.Favorites.ICON, data);
}
}