diff options
author | Mike Reed <reed@google.com> | 2009-10-07 11:38:05 -0700 |
---|---|---|
committer | Mike Reed <reed@google.com> | 2009-10-07 11:38:05 -0700 |
commit | a78b0a2d9ebb38b86ed802b3d86de07d0b301262 (patch) | |
tree | 5e4e7e0e5045af26ebf82a07bdd9d7a0d47ee8df /core/jni/android/graphics | |
parent | 4625758d0b909ccfc9f40b707666b1b21e9e8ffd (diff) | |
download | frameworks_base-a78b0a2d9ebb38b86ed802b3d86de07d0b301262.zip frameworks_base-a78b0a2d9ebb38b86ed802b3d86de07d0b301262.tar.gz frameworks_base-a78b0a2d9ebb38b86ed802b3d86de07d0b301262.tar.bz2 |
add (hidden) setHasAlpha() to allow clients like the view's cache to hint that a bitmap is opaque.
Knowing that a 32bit bitmap is opaque is a performance boost for some blits.
Diffstat (limited to 'core/jni/android/graphics')
-rw-r--r-- | core/jni/android/graphics/Bitmap.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/core/jni/android/graphics/Bitmap.cpp b/core/jni/android/graphics/Bitmap.cpp index 8d52917..0f1b845 100644 --- a/core/jni/android/graphics/Bitmap.cpp +++ b/core/jni/android/graphics/Bitmap.cpp @@ -317,6 +317,11 @@ static jboolean Bitmap_hasAlpha(JNIEnv* env, jobject, SkBitmap* bitmap) { return !bitmap->isOpaque();
}
+static void Bitmap_setHasAlpha(JNIEnv* env, jobject, SkBitmap* bitmap,
+ jboolean hasAlpha) {
+ bitmap->setIsOpaque(!hasAlpha);
+}
+
///////////////////////////////////////////////////////////////////////////////
static jobject Bitmap_createFromParcel(JNIEnv* env, jobject, jobject parcel) {
@@ -546,6 +551,7 @@ static JNINativeMethod gBitmapMethods[] = { { "nativeRowBytes", "(I)I", (void*)Bitmap_rowBytes },
{ "nativeConfig", "(I)I", (void*)Bitmap_config },
{ "nativeHasAlpha", "(I)Z", (void*)Bitmap_hasAlpha },
+ { "nativeSetHasAlpha", "(IZ)V", (void*)Bitmap_setHasAlpha },
{ "nativeCreateFromParcel",
"(Landroid/os/Parcel;)Landroid/graphics/Bitmap;",
(void*)Bitmap_createFromParcel },
|