From fc8db53eee11568b286e8d9c17e211bd6781fab6 Mon Sep 17 00:00:00 2001 From: Mike Reed Date: Mon, 27 Apr 2009 11:43:30 -0400 Subject: [PATCH] Manage imagecache ram budget This code was lifted from the browser, and is now global since java clients may also use this cache for decoded images --- core/jni/AndroidRuntime.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/core/jni/AndroidRuntime.cpp b/core/jni/AndroidRuntime.cpp index 674206257d2d5..7c9f457c042ad 100644 --- a/core/jni/AndroidRuntime.cpp +++ b/core/jni/AndroidRuntime.cpp @@ -30,6 +30,7 @@ #include #include +#include #include "jni.h" #include "JNIHelp.h" @@ -228,6 +229,13 @@ AndroidRuntime::AndroidRuntime() // this sets our preference for 16bit images during decode // in case the src is opaque and 24bit SkImageDecoder::SetDeviceConfig(SkBitmap::kRGB_565_Config); + // This cache is shared between browser native images, and java "purgeable" + // bitmaps. This globalpool is for images that do not either use the java + // heap, or are not backed by ashmem. See BitmapFactory.cpp for the key + // java call site. + SkImageRef_GlobalPool::SetRAMBudget(512 * 1024); + // There is also a global font cache, but its budget is specified in code + // see SkFontHost_android.cpp // Pre-allocate enough space to hold a fair number of options. mOptions.setCapacity(20);