Merge "Stop pretending USE_OPENGL_RENDERER is a thing"
diff --git a/core/jni/Android.mk b/core/jni/Android.mk
index 2d54742..1e816ae 100644
--- a/core/jni/Android.mk
+++ b/core/jni/Android.mk
@@ -16,10 +16,6 @@
LOCAL_CFLAGS += -DPACKED=""
endif
-ifeq ($(USE_OPENGL_RENDERER),true)
- LOCAL_CFLAGS += -DUSE_OPENGL_RENDERER
-endif
-
LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
LOCAL_SRC_FILES:= \
@@ -247,11 +243,8 @@
libprocessgroup \
libnativebridge
-ifeq ($(USE_OPENGL_RENDERER),true)
- LOCAL_SHARED_LIBRARIES += libhwui
-endif
-
LOCAL_SHARED_LIBRARIES += \
+ libhwui \
libdl
# we need to access the private Bionic header
diff --git a/core/jni/android/graphics/Bitmap.cpp b/core/jni/android/graphics/Bitmap.cpp
index ceec0e3..f506569 100755
--- a/core/jni/android/graphics/Bitmap.cpp
+++ b/core/jni/android/graphics/Bitmap.cpp
@@ -363,24 +363,20 @@
static void Bitmap_destructor(JNIEnv* env, jobject, jlong bitmapHandle) {
SkBitmap* bitmap = reinterpret_cast<SkBitmap*>(bitmapHandle);
-#ifdef USE_OPENGL_RENDERER
if (android::uirenderer::ResourceCache::hasInstance()) {
android::uirenderer::ResourceCache::getInstance().destructor(bitmap);
- return;
+ } else {
+ delete bitmap;
}
-#endif // USE_OPENGL_RENDERER
- delete bitmap;
}
static jboolean Bitmap_recycle(JNIEnv* env, jobject, jlong bitmapHandle) {
SkBitmap* bitmap = reinterpret_cast<SkBitmap*>(bitmapHandle);
-#ifdef USE_OPENGL_RENDERER
if (android::uirenderer::ResourceCache::hasInstance()) {
bool result;
result = android::uirenderer::ResourceCache::getInstance().recycle(bitmap);
return result ? JNI_TRUE : JNI_FALSE;
}
-#endif // USE_OPENGL_RENDERER
bitmap->setPixels(NULL, NULL);
return JNI_TRUE;
}
diff --git a/core/jni/android/graphics/CanvasProperty.cpp b/core/jni/android/graphics/CanvasProperty.cpp
index a69a457..deb4971 100644
--- a/core/jni/android/graphics/CanvasProperty.cpp
+++ b/core/jni/android/graphics/CanvasProperty.cpp
@@ -24,12 +24,6 @@
namespace android {
-#ifdef USE_OPENGL_RENDERER
-static const bool kUseOpenGLRenderer = true;
-#else
-static const bool kUseOpenGLRenderer = false;
-#endif
-
using namespace uirenderer;
static jlong createFloat(JNIEnv* env, jobject clazz, jfloat initialValue) {
@@ -51,11 +45,8 @@
};
int register_android_graphics_CanvasProperty(JNIEnv* env) {
- if (kUseOpenGLRenderer) {
- return RegisterMethodsOrDie(env, "android/graphics/CanvasProperty", gMethods,
- NELEM(gMethods));
- }
- return 0;
+ return RegisterMethodsOrDie(env, "android/graphics/CanvasProperty", gMethods,
+ NELEM(gMethods));
}
}; // namespace android
diff --git a/core/jni/android/graphics/NinePatch.cpp b/core/jni/android/graphics/NinePatch.cpp
index d868f28..543323c 100644
--- a/core/jni/android/graphics/NinePatch.cpp
+++ b/core/jni/android/graphics/NinePatch.cpp
@@ -80,14 +80,12 @@
static void finalize(JNIEnv* env, jobject, jlong patchHandle) {
int8_t* patch = reinterpret_cast<int8_t*>(patchHandle);
-#ifdef USE_OPENGL_RENDERER
if (android::uirenderer::ResourceCache::hasInstance()) {
Res_png_9patch* p = (Res_png_9patch*) patch;
android::uirenderer::ResourceCache::getInstance().destructor(p);
- return;
+ } else {
+ delete[] patch;
}
-#endif // USE_OPENGL_RENDERER
- delete[] patch;
}
static void draw(JNIEnv* env, SkCanvas* canvas, SkRect& bounds, const SkBitmap* bitmap,
diff --git a/core/jni/android/graphics/Path.cpp b/core/jni/android/graphics/Path.cpp
index 1e4eb75..831ce09 100644
--- a/core/jni/android/graphics/Path.cpp
+++ b/core/jni/android/graphics/Path.cpp
@@ -38,13 +38,11 @@
static void finalizer(JNIEnv* env, jobject clazz, jlong objHandle) {
SkPath* obj = reinterpret_cast<SkPath*>(objHandle);
-#ifdef USE_OPENGL_RENDERER
if (android::uirenderer::ResourceCache::hasInstance()) {
android::uirenderer::ResourceCache::getInstance().destructor(obj);
- return;
+ } else {
+ delete obj;
}
-#endif
- delete obj;
}
static jlong init1(JNIEnv* env, jobject clazz) {
diff --git a/core/jni/android_view_GLES20Canvas.cpp b/core/jni/android_view_GLES20Canvas.cpp
index ac30bda..084117c 100644
--- a/core/jni/android_view_GLES20Canvas.cpp
+++ b/core/jni/android_view_GLES20Canvas.cpp
@@ -57,13 +57,6 @@
jmethodID set;
} gRectClassInfo;
-/**
- * Note: DisplayListRenderer JNI layer is generated and compiled only on supported
- * devices. This means all the logic must be compiled only when the
- * preprocessor variable USE_OPENGL_RENDERER is defined.
- */
-#ifdef USE_OPENGL_RENDERER
-
// ----------------------------------------------------------------------------
// Defines
// ----------------------------------------------------------------------------
@@ -803,32 +796,20 @@
renderer->drawLayer(layer, x, y);
}
-#endif // USE_OPENGL_RENDERER
-
-#ifdef USE_OPENGL_RENDERER
-static const bool kUseOpenGLRenderer = true;
-#else
-static const bool kUseOpenGLRenderer = false;
-#endif
-
// ----------------------------------------------------------------------------
// Common
// ----------------------------------------------------------------------------
static jboolean android_view_GLES20Canvas_isAvailable(JNIEnv* env, jobject clazz) {
- if (kUseOpenGLRenderer) {
- char prop[PROPERTY_VALUE_MAX];
- if (property_get("ro.kernel.qemu", prop, NULL) == 0) {
- // not in the emulator
- return JNI_TRUE;
- }
- // In the emulator this property will be set to 1 when hardware GLES is
- // enabled, 0 otherwise. On old emulator versions it will be undefined.
- property_get("ro.kernel.qemu.gles", prop, "0");
- return atoi(prop) == 1 ? JNI_TRUE : JNI_FALSE;
- } else {
- return JNI_FALSE;
+ char prop[PROPERTY_VALUE_MAX];
+ if (property_get("ro.kernel.qemu", prop, NULL) == 0) {
+ // not in the emulator
+ return JNI_TRUE;
}
+ // In the emulator this property will be set to 1 when hardware GLES is
+ // enabled, 0 otherwise. On old emulator versions it will be undefined.
+ property_get("ro.kernel.qemu.gles", prop, "0");
+ return atoi(prop) == 1 ? JNI_TRUE : JNI_FALSE;
}
// ----------------------------------------------------------------------------
@@ -837,10 +818,8 @@
static void
android_app_ActivityThread_dumpGraphics(JNIEnv* env, jobject clazz, jobject javaFileDescriptor) {
- if (kUseOpenGLRenderer) {
- int fd = jniGetFDFromFileDescriptor(env, javaFileDescriptor);
- android::uirenderer::renderthread::RenderProxy::outputLogBuffer(fd);
- }
+ int fd = jniGetFDFromFileDescriptor(env, javaFileDescriptor);
+ android::uirenderer::renderthread::RenderProxy::outputLogBuffer(fd);
}
// ----------------------------------------------------------------------------
@@ -851,9 +830,6 @@
static JNINativeMethod gMethods[] = {
{ "nIsAvailable", "()Z", (void*) android_view_GLES20Canvas_isAvailable },
-
-#ifdef USE_OPENGL_RENDERER
-
{ "nDestroyRenderer", "(J)V", (void*) android_view_GLES20Canvas_destroyRenderer },
{ "nSetViewport", "(JII)V", (void*) android_view_GLES20Canvas_setViewport },
{ "nSetHighContrastText","(JZ)V", (void*) android_view_GLES20Canvas_setHighContrastText },
@@ -939,8 +915,6 @@
{ "nGetMaximumTextureWidth", "()I", (void*) android_view_GLES20Canvas_getMaxTextureWidth },
{ "nGetMaximumTextureHeight", "()I", (void*) android_view_GLES20Canvas_getMaxTextureHeight },
-
-#endif
};
static JNINativeMethod gActivityThreadMethods[] = {
@@ -949,10 +923,8 @@
};
int register_android_view_GLES20Canvas(JNIEnv* env) {
- if (kUseOpenGLRenderer) {
- jclass clazz = FindClassOrDie(env, "android/graphics/Rect");
- gRectClassInfo.set = GetMethodIDOrDie(env, clazz, "set", "(IIII)V");
- }
+ jclass clazz = FindClassOrDie(env, "android/graphics/Rect");
+ gRectClassInfo.set = GetMethodIDOrDie(env, clazz, "set", "(IIII)V");
return RegisterMethodsOrDie(env, kClassPathName, gMethods, NELEM(gMethods));
}
diff --git a/core/jni/android_view_HardwareLayer.cpp b/core/jni/android_view_HardwareLayer.cpp
index cefb3da..f539127 100644
--- a/core/jni/android_view_HardwareLayer.cpp
+++ b/core/jni/android_view_HardwareLayer.cpp
@@ -41,8 +41,6 @@
using namespace uirenderer;
-#ifdef USE_OPENGL_RENDERER
-
static jboolean android_view_HardwareLayer_prepare(JNIEnv* env, jobject clazz,
jlong layerUpdaterPtr, jint width, jint height, jboolean isOpaque) {
DeferredLayerUpdater* layer = reinterpret_cast<DeferredLayerUpdater*>(layerUpdaterPtr);
@@ -87,8 +85,6 @@
return layer->backingLayer()->getTexture();
}
-#endif // USE_OPENGL_RENDERER
-
// ----------------------------------------------------------------------------
// JNI Glue
// ----------------------------------------------------------------------------
@@ -96,8 +92,6 @@
const char* const kClassPathName = "android/view/HardwareLayer";
static JNINativeMethod gMethods[] = {
-#ifdef USE_OPENGL_RENDERER
-
{ "nPrepare", "(JIIZ)Z", (void*) android_view_HardwareLayer_prepare },
{ "nSetLayerPaint", "(JJ)V", (void*) android_view_HardwareLayer_setLayerPaint },
{ "nSetTransform", "(JJ)V", (void*) android_view_HardwareLayer_setTransform },
@@ -106,7 +100,6 @@
{ "nUpdateSurfaceTexture", "(J)V", (void*) android_view_HardwareLayer_updateSurfaceTexture },
{ "nGetTexName", "(J)I", (void*) android_view_HardwareLayer_getTexName },
-#endif
};
int register_android_view_HardwareLayer(JNIEnv* env) {
diff --git a/core/jni/android_view_RenderNode.cpp b/core/jni/android_view_RenderNode.cpp
index a1d3bc6..2b5a961 100644
--- a/core/jni/android_view_RenderNode.cpp
+++ b/core/jni/android_view_RenderNode.cpp
@@ -34,13 +34,6 @@
using namespace uirenderer;
-/**
- * Note: OpenGLRenderer JNI layer is generated and compiled only on supported
- * devices. This means all the logic must be compiled only when the
- * preprocessor variable USE_OPENGL_RENDERER is defined.
- */
-#ifdef USE_OPENGL_RENDERER
-
#define SET_AND_DIRTY(prop, val, dirtyFlag) \
(reinterpret_cast<RenderNode*>(renderNodePtr)->mutateStagingProperties().prop(val) \
? (reinterpret_cast<RenderNode*>(renderNodePtr)->setPropertyFieldsDirty(dirtyFlag), true) \
@@ -469,8 +462,6 @@
renderNode->animators().endAllStagingAnimators();
}
-#endif // USE_OPENGL_RENDERER
-
// ----------------------------------------------------------------------------
// JNI Glue
// ----------------------------------------------------------------------------
@@ -478,7 +469,6 @@
const char* const kClassPathName = "android/view/RenderNode";
static JNINativeMethod gMethods[] = {
-#ifdef USE_OPENGL_RENDERER
{ "nCreate", "(Ljava/lang/String;)J", (void*) android_view_RenderNode_create },
{ "nDestroyRenderNode", "(J)V", (void*) android_view_RenderNode_destroyRenderNode },
{ "nSetDisplayListData", "(JJ)V", (void*) android_view_RenderNode_setDisplayListData },
@@ -550,7 +540,6 @@
{ "nAddAnimator", "(JJ)V", (void*) android_view_RenderNode_addAnimator },
{ "nEndAllAnimators", "(J)V", (void*) android_view_RenderNode_endAllAnimators },
-#endif
};
int register_android_view_RenderNode(JNIEnv* env) {
diff --git a/core/jni/android_view_RenderNodeAnimator.cpp b/core/jni/android_view_RenderNodeAnimator.cpp
index 0978ebb..4177ee2 100644
--- a/core/jni/android_view_RenderNodeAnimator.cpp
+++ b/core/jni/android_view_RenderNodeAnimator.cpp
@@ -37,8 +37,6 @@
jmethodID callOnFinished;
} gRenderNodeAnimatorClassInfo;
-#ifdef USE_OPENGL_RENDERER
-
static JNIEnv* getEnv(JavaVM* vm) {
JNIEnv* env;
if (vm->GetEnv(reinterpret_cast<void**>(&env), JNI_VERSION_1_6) != JNI_OK) {
@@ -189,8 +187,6 @@
animator->end();
}
-#endif
-
// ----------------------------------------------------------------------------
// JNI Glue
// ----------------------------------------------------------------------------
@@ -198,7 +194,6 @@
const char* const kClassPathName = "android/view/RenderNodeAnimator";
static JNINativeMethod gMethods[] = {
-#ifdef USE_OPENGL_RENDERER
{ "nCreateAnimator", "(IF)J", (void*) createAnimator },
{ "nCreateCanvasPropertyFloatAnimator", "(JF)J", (void*) createCanvasPropertyFloatAnimator },
{ "nCreateCanvasPropertyPaintAnimator", "(JIF)J", (void*) createCanvasPropertyPaintAnimator },
@@ -212,13 +207,10 @@
{ "nSetListener", "(JLandroid/view/RenderNodeAnimator;)V", (void*) setListener},
{ "nStart", "(J)V", (void*) start},
{ "nEnd", "(J)V", (void*) end },
-#endif
};
int register_android_view_RenderNodeAnimator(JNIEnv* env) {
-#ifdef USE_OPENGL_RENDERER
sLifecycleChecker.incStrong(0);
-#endif
gRenderNodeAnimatorClassInfo.clazz = FindClassOrDie(env, kClassPathName);
gRenderNodeAnimatorClassInfo.clazz = MakeGlobalRefOrDie(env,
gRenderNodeAnimatorClassInfo.clazz);
diff --git a/core/jni/android_view_ThreadedRenderer.cpp b/core/jni/android_view_ThreadedRenderer.cpp
index 9b06293..068b24e 100644
--- a/core/jni/android_view_ThreadedRenderer.cpp
+++ b/core/jni/android_view_ThreadedRenderer.cpp
@@ -44,8 +44,6 @@
namespace android {
-#ifdef USE_OPENGL_RENDERER
-
using namespace android::uirenderer;
using namespace android::uirenderer::renderthread;
@@ -399,8 +397,6 @@
proxy->dumpProfileInfo(fd);
}
-#endif
-
// ----------------------------------------------------------------------------
// Shaders
// ----------------------------------------------------------------------------
@@ -420,7 +416,6 @@
const char* const kClassPathName = "android/view/ThreadedRenderer";
static JNINativeMethod gMethods[] = {
-#ifdef USE_OPENGL_RENDERER
{ "nSetAtlas", "(JLandroid/view/GraphicBuffer;[J)V", (void*) android_view_ThreadedRenderer_setAtlas },
{ "nCreateRootRenderNode", "()J", (void*) android_view_ThreadedRenderer_createRootRenderNode },
{ "nCreateProxy", "(ZJ)J", (void*) android_view_ThreadedRenderer_createProxy },
@@ -448,7 +443,6 @@
{ "nStopDrawing", "(J)V", (void*) android_view_ThreadedRenderer_stopDrawing },
{ "nNotifyFramePending", "(J)V", (void*) android_view_ThreadedRenderer_notifyFramePending },
{ "nDumpProfileInfo", "(JLjava/io/FileDescriptor;)V", (void*) android_view_ThreadedRenderer_dumpProfileInfo },
-#endif
{ "setupShadersDiskCache", "(Ljava/lang/String;)V",
(void*) android_view_ThreadedRenderer_setupShadersDiskCache },
};
diff --git a/core/jni/com_android_internal_view_animation_NativeInterpolatorFactoryHelper.cpp b/core/jni/com_android_internal_view_animation_NativeInterpolatorFactoryHelper.cpp
index c5c2e9d..2c65d62 100644
--- a/core/jni/com_android_internal_view_animation_NativeInterpolatorFactoryHelper.cpp
+++ b/core/jni/com_android_internal_view_animation_NativeInterpolatorFactoryHelper.cpp
@@ -26,8 +26,6 @@
using namespace uirenderer;
-#ifdef USE_OPENGL_RENDERER
-
static jlong createAccelerateDecelerateInterpolator(JNIEnv* env, jobject clazz) {
return reinterpret_cast<jlong>(new AccelerateDecelerateInterpolator());
}
@@ -74,8 +72,6 @@
return reinterpret_cast<jlong>(new LUTInterpolator(lut, len));
}
-#endif
-
// ----------------------------------------------------------------------------
// JNI Glue
// ----------------------------------------------------------------------------
@@ -83,7 +79,6 @@
const char* const kClassPathName = "com/android/internal/view/animation/NativeInterpolatorFactoryHelper";
static JNINativeMethod gMethods[] = {
-#ifdef USE_OPENGL_RENDERER
{ "createAccelerateDecelerateInterpolator", "()J", (void*) createAccelerateDecelerateInterpolator },
{ "createAccelerateInterpolator", "(F)J", (void*) createAccelerateInterpolator },
{ "createAnticipateInterpolator", "(F)J", (void*) createAnticipateInterpolator },
@@ -94,7 +89,6 @@
{ "createLinearInterpolator", "()J", (void*) createLinearInterpolator },
{ "createOvershootInterpolator", "(F)J", (void*) createOvershootInterpolator },
{ "createLutInterpolator", "([F)J", (void*) createLutInterpolator },
-#endif
};
int register_com_android_internal_view_animation_NativeInterpolatorFactoryHelper(JNIEnv* env) {
diff --git a/libs/hwui/Android.common.mk b/libs/hwui/Android.common.mk
index 70db03d..536912a 100644
--- a/libs/hwui/Android.common.mk
+++ b/libs/hwui/Android.common.mk
@@ -76,7 +76,7 @@
LOCAL_C_INCLUDES += \
external/skia/src/core
-LOCAL_CFLAGS += -DUSE_OPENGL_RENDERER -DEGL_EGLEXT_PROTOTYPES -DGL_GLEXT_PROTOTYPES
+LOCAL_CFLAGS += -DEGL_EGLEXT_PROTOTYPES -DGL_GLEXT_PROTOTYPES
LOCAL_CFLAGS += -Wno-unused-parameter
LOCAL_SHARED_LIBRARIES := liblog libcutils libutils libEGL libGLESv2 libskia libui libgui
diff --git a/libs/hwui/Android.mk b/libs/hwui/Android.mk
index 1b73fbd..aa8db26 100644
--- a/libs/hwui/Android.mk
+++ b/libs/hwui/Android.mk
@@ -2,16 +2,12 @@
include $(CLEAR_VARS)
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
-# Only build libhwui when USE_OPENGL_RENDERER is
-# defined in the current device/board configuration
-ifeq ($(USE_OPENGL_RENDERER),true)
- LOCAL_MODULE_CLASS := SHARED_LIBRARIES
- LOCAL_MODULE := libhwui
- LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_CLASS := SHARED_LIBRARIES
+LOCAL_MODULE := libhwui
+LOCAL_MODULE_TAGS := optional
- include $(LOCAL_PATH)/Android.common.mk
+include $(LOCAL_PATH)/Android.common.mk
- include $(BUILD_SHARED_LIBRARY)
+include $(BUILD_SHARED_LIBRARY)
- include $(call all-makefiles-under,$(LOCAL_PATH))
-endif
+include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/libs/hwui/Caches.cpp b/libs/hwui/Caches.cpp
index 674102b..bb4ac83 100644
--- a/libs/hwui/Caches.cpp
+++ b/libs/hwui/Caches.cpp
@@ -29,10 +29,8 @@
namespace android {
-#ifdef USE_OPENGL_RENDERER
using namespace uirenderer;
ANDROID_SINGLETON_STATIC_INSTANCE(Caches);
-#endif
namespace uirenderer {
diff --git a/libs/hwui/DisplayListLogBuffer.cpp b/libs/hwui/DisplayListLogBuffer.cpp
index bc9e7bd..23b6cff 100644
--- a/libs/hwui/DisplayListLogBuffer.cpp
+++ b/libs/hwui/DisplayListLogBuffer.cpp
@@ -47,10 +47,8 @@
namespace android {
-#ifdef USE_OPENGL_RENDERER
using namespace uirenderer;
ANDROID_SINGLETON_STATIC_INSTANCE(DisplayListLogBuffer);
-#endif
namespace uirenderer {
diff --git a/libs/hwui/ResourceCache.cpp b/libs/hwui/ResourceCache.cpp
index 31bd637..8a48a6e 100644
--- a/libs/hwui/ResourceCache.cpp
+++ b/libs/hwui/ResourceCache.cpp
@@ -22,10 +22,8 @@
namespace android {
-#ifdef USE_OPENGL_RENDERER
using namespace uirenderer;
ANDROID_SINGLETON_STATIC_INSTANCE(ResourceCache);
-#endif
namespace uirenderer {