Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(211)

Unified Diff: ui/gfx/android/java_bitmap.cc

Issue 22870016: Update the nine patch layer to use UI resources (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: changed from raw SkPixelRef pointers to skia::RefPtr<SkPixelRef> Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« cc/resources/ui_resource_bitmap.h ('K') | « ui/gfx/android/java_bitmap.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/gfx/android/java_bitmap.cc
diff --git a/ui/gfx/android/java_bitmap.cc b/ui/gfx/android/java_bitmap.cc
index 83d4a46518203edb5ecafd2efdc7d3b253a32806..aff3d0b9ee7baaff8fb70933d8f4c191e58f3e77 100644
--- a/ui/gfx/android/java_bitmap.cc
+++ b/ui/gfx/android/java_bitmap.cc
@@ -71,22 +71,20 @@ static ScopedJavaLocalRef<jobject> CreateJavaBitmapFromResource(
requested_size.height());
}
-static SkBitmap ConvertToSkBitmap(ScopedJavaLocalRef<jobject> jbitmap) {
- if (jbitmap.is_null())
- return SkBitmap();
+SkBitmap CreateSkBitmapFromJavaBitmap(JavaBitmap& jbitmap) {
+ DCHECK_EQ(jbitmap.format(), ANDROID_BITMAP_FORMAT_RGBA_8888);
- JavaBitmap src_lock(jbitmap.obj());
- DCHECK_EQ(src_lock.format(), ANDROID_BITMAP_FORMAT_RGBA_8888);
-
- gfx::Size src_size = src_lock.size();
+ gfx::Size src_size = jbitmap.size();
SkBitmap skbitmap;
skbitmap.setConfig(SkBitmap::kARGB_8888_Config,
- src_size.width(), src_size.height(), src_lock.stride());
+ src_size.width(),
+ src_size.height(),
+ jbitmap.stride());
skbitmap.allocPixels();
SkAutoLockPixels dst_lock(skbitmap);
- void* src_pixels = src_lock.pixels();
+ void* src_pixels = jbitmap.pixels();
void* dst_pixels = skbitmap.getPixels();
memcpy(dst_pixels, src_pixels, skbitmap.getSize());
@@ -94,6 +92,14 @@ static SkBitmap ConvertToSkBitmap(ScopedJavaLocalRef<jobject> jbitmap) {
return skbitmap;
}
+static SkBitmap ConvertToSkBitmap(ScopedJavaLocalRef<jobject> jbitmap) {
aelias_OOO_until_Jul13 2013/09/06 04:17:38 Could you get rid of this method by making CreateJ
powei 2013/09/09 17:57:18 Done. Consolidated into fewer functions.
+ if (jbitmap.is_null())
+ return SkBitmap();
+
+ JavaBitmap src_lock(jbitmap.obj());
+ return CreateSkBitmapFromJavaBitmap(src_lock);
+}
+
SkBitmap CreateSkBitmapFromResource(const char* name, gfx::Size size) {
DCHECK(!size.IsEmpty());
SkBitmap bitmap =
« cc/resources/ui_resource_bitmap.h ('K') | « ui/gfx/android/java_bitmap.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698