diff options
author | John Reck <jreck@google.com> | 2014-06-27 14:45:25 -0700 |
---|---|---|
committer | John Reck <jreck@google.com> | 2014-06-27 22:34:16 +0000 |
commit | 918ad523b2780e0c893f3d2a32d4ec13f2a7e921 (patch) | |
tree | a10eb15752acf14bbf50b6e250ca8e8beeb2f736 /core/jni/android_view_ThreadedRenderer.cpp | |
parent | 81af3aef9a0d015311f6c97e318c81092c74eb47 (diff) | |
download | frameworks_base-918ad523b2780e0c893f3d2a32d4ec13f2a7e921.zip frameworks_base-918ad523b2780e0c893f3d2a32d4ec13f2a7e921.tar.gz frameworks_base-918ad523b2780e0c893f3d2a32d4ec13f2a7e921.tar.bz2 |
More cleanups
Change-Id: Id5967944b949a2aec57e4fe9fdcdc04c11b8c35a
Diffstat (limited to 'core/jni/android_view_ThreadedRenderer.cpp')
-rw-r--r-- | core/jni/android_view_ThreadedRenderer.cpp | 42 |
1 files changed, 8 insertions, 34 deletions
diff --git a/core/jni/android_view_ThreadedRenderer.cpp b/core/jni/android_view_ThreadedRenderer.cpp index 3e62d0b..e63c475 100644 --- a/core/jni/android_view_ThreadedRenderer.cpp +++ b/core/jni/android_view_ThreadedRenderer.cpp @@ -47,8 +47,6 @@ namespace android { using namespace android::uirenderer; using namespace android::uirenderer::renderthread; -static jmethodID gRunnableMethod; - static JNIEnv* getenv(JavaVM* vm) { JNIEnv* env; if (vm->GetEnv(reinterpret_cast<void**>(&env), JNI_VERSION_1_6) != JNI_OK) { @@ -57,25 +55,6 @@ static JNIEnv* getenv(JavaVM* vm) { return env; } -class JavaTask : public RenderTask { -public: - JavaTask(JNIEnv* env, jobject jrunnable) { - env->GetJavaVM(&mVm); - mRunnable = env->NewGlobalRef(jrunnable); - } - - virtual void run() { - JNIEnv* env = getenv(mVm); - env->CallVoidMethod(mRunnable, gRunnableMethod); - env->DeleteGlobalRef(mRunnable); - delete this; - }; - -private: - JavaVM* mVm; - jobject mRunnable; -}; - class OnFinishedEvent { public: OnFinishedEvent(BaseRenderNodeAnimator* animator, AnimationListener* listener) @@ -276,13 +255,6 @@ static void android_view_ThreadedRenderer_invokeFunctor(JNIEnv* env, jobject cla RenderProxy::invokeFunctor(functor, waitForCompletion); } -static void android_view_ThreadedRenderer_runWithGlContext(JNIEnv* env, jobject clazz, - jlong proxyPtr, jobject jrunnable) { - RenderProxy* proxy = reinterpret_cast<RenderProxy*>(proxyPtr); - RenderTask* task = new JavaTask(env, jrunnable); - proxy->runWithGlContext(task); -} - static jlong android_view_ThreadedRenderer_createDisplayListLayer(JNIEnv* env, jobject clazz, jlong proxyPtr, jint width, jint height) { RenderProxy* proxy = reinterpret_cast<RenderProxy*>(proxyPtr); @@ -319,6 +291,13 @@ static void android_view_ThreadedRenderer_cancelLayerUpdate(JNIEnv* env, jobject proxy->cancelLayerUpdate(layer); } +static void android_view_ThreadedRenderer_detachSurfaceTexture(JNIEnv* env, jobject clazz, + jlong proxyPtr, jlong layerPtr) { + RenderProxy* proxy = reinterpret_cast<RenderProxy*>(proxyPtr); + DeferredLayerUpdater* layer = reinterpret_cast<DeferredLayerUpdater*>(layerPtr); + proxy->detachSurfaceTexture(layer); +} + static void android_view_ThreadedRenderer_flushCaches(JNIEnv* env, jobject clazz, jlong proxyPtr, jint flushMode) { RenderProxy* proxy = reinterpret_cast<RenderProxy*>(proxyPtr); @@ -380,12 +359,12 @@ static JNINativeMethod gMethods[] = { { "nSyncAndDrawFrame", "(JJJF)I", (void*) android_view_ThreadedRenderer_syncAndDrawFrame }, { "nDestroyCanvasAndSurface", "(J)V", (void*) android_view_ThreadedRenderer_destroyCanvasAndSurface }, { "nInvokeFunctor", "(JZ)V", (void*) android_view_ThreadedRenderer_invokeFunctor }, - { "nRunWithGlContext", "(JLjava/lang/Runnable;)V", (void*) android_view_ThreadedRenderer_runWithGlContext }, { "nCreateDisplayListLayer", "(JII)J", (void*) android_view_ThreadedRenderer_createDisplayListLayer }, { "nCreateTextureLayer", "(J)J", (void*) android_view_ThreadedRenderer_createTextureLayer }, { "nCopyLayerInto", "(JJJ)Z", (void*) android_view_ThreadedRenderer_copyLayerInto }, { "nPushLayerUpdate", "(JJ)V", (void*) android_view_ThreadedRenderer_pushLayerUpdate }, { "nCancelLayerUpdate", "(JJ)V", (void*) android_view_ThreadedRenderer_cancelLayerUpdate }, + { "nDetachSurfaceTexture", "(JJ)V", (void*) android_view_ThreadedRenderer_detachSurfaceTexture }, { "nFlushCaches", "(JI)V", (void*) android_view_ThreadedRenderer_flushCaches }, { "nFence", "(J)V", (void*) android_view_ThreadedRenderer_fence }, { "nNotifyFramePending", "(J)V", (void*) android_view_ThreadedRenderer_notifyFramePending }, @@ -396,11 +375,6 @@ static JNINativeMethod gMethods[] = { }; int register_android_view_ThreadedRenderer(JNIEnv* env) { -#ifdef USE_OPENGL_RENDERER - jclass cls = env->FindClass("java/lang/Runnable"); - gRunnableMethod = env->GetMethodID(cls, "run", "()V"); - env->DeleteLocalRef(cls); -#endif return AndroidRuntime::registerNativeMethods(env, kClassPathName, gMethods, NELEM(gMethods)); } |