diff options
-rw-r--r-- | core/java/android/view/GLES20Canvas.java | 11 | ||||
-rw-r--r-- | core/jni/android_view_GLES20Canvas.cpp | 8 | ||||
-rw-r--r-- | graphics/java/android/graphics/Canvas.java | 9 | ||||
-rw-r--r-- | libs/hwui/DisplayListRenderer.cpp | 1 | ||||
-rw-r--r-- | libs/hwui/DisplayListRenderer.h | 24 |
5 files changed, 3 insertions, 50 deletions
diff --git a/core/java/android/view/GLES20Canvas.java b/core/java/android/view/GLES20Canvas.java index 479e860..19b7861 100644 --- a/core/java/android/view/GLES20Canvas.java +++ b/core/java/android/view/GLES20Canvas.java @@ -991,15 +991,4 @@ class GLES20Canvas extends HardwareCanvas { int indexOffset, int indexCount, Paint paint) { // TODO: Implement } - - @Override - public void setOverrideXfermode(PorterDuff.Mode xfermode) { - int xfermodeValue = -1; - if (xfermode != null) { - xfermodeValue = xfermode.nativeInt; - } - nSetOverrideXfermode(mRenderer, xfermodeValue); - } - - private static native void nSetOverrideXfermode(long renderer, int xfermode); } diff --git a/core/jni/android_view_GLES20Canvas.cpp b/core/jni/android_view_GLES20Canvas.cpp index 1ed96ab..4a42bdd 100644 --- a/core/jni/android_view_GLES20Canvas.cpp +++ b/core/jni/android_view_GLES20Canvas.cpp @@ -166,12 +166,6 @@ static jint android_view_GLES20Canvas_getMaxTextureHeight(JNIEnv* env, jobject c return Caches::getInstance().maxTextureSize; } -static void android_view_GLES20Canvas_setOverrideXfermode(JNIEnv* env, jobject clazz, - jlong rendererPtr, int xfermode) { - DisplayListRenderer* renderer = reinterpret_cast<DisplayListRenderer*>(rendererPtr); - renderer->setOverrideXfermode(xfermode); -} - // ---------------------------------------------------------------------------- // State // ---------------------------------------------------------------------------- @@ -959,8 +953,6 @@ static JNINativeMethod gMethods[] = { { "nGetMaximumTextureWidth", "()I", (void*) android_view_GLES20Canvas_getMaxTextureWidth }, { "nGetMaximumTextureHeight", "()I", (void*) android_view_GLES20Canvas_getMaxTextureHeight }, - { "nSetOverrideXfermode", "(JI)V", (void*) android_view_GLES20Canvas_setOverrideXfermode }, - #endif }; diff --git a/graphics/java/android/graphics/Canvas.java b/graphics/java/android/graphics/Canvas.java index 045a288..a0267c8 100644 --- a/graphics/java/android/graphics/Canvas.java +++ b/graphics/java/android/graphics/Canvas.java @@ -250,15 +250,6 @@ public class Canvas { public void insertInorderBarrier() {} /** - * Set a transfer mode that overrides any transfer modes - * in paints used for drawing. Pass null to disable this - * override. Only implemented in GLES20Canvas. - * - * @hide - */ - public void setOverrideXfermode(@Nullable PorterDuff.Mode xfermode) {} - - /** * Return true if the device that the current layer draws into is opaque * (i.e. does not support per-pixel alpha). * diff --git a/libs/hwui/DisplayListRenderer.cpp b/libs/hwui/DisplayListRenderer.cpp index 916e916..1eefa89 100644 --- a/libs/hwui/DisplayListRenderer.cpp +++ b/libs/hwui/DisplayListRenderer.cpp @@ -41,7 +41,6 @@ DisplayListRenderer::DisplayListRenderer() , mHasDeferredTranslate(false) , mDeferredBarrierType(kBarrier_None) , mHighContrastText(false) - , mOverrideXfermode(-1) , mRestoreSaveCount(-1) { } diff --git a/libs/hwui/DisplayListRenderer.h b/libs/hwui/DisplayListRenderer.h index c8a97424..6646da7 100644 --- a/libs/hwui/DisplayListRenderer.h +++ b/libs/hwui/DisplayListRenderer.h @@ -23,7 +23,6 @@ #include <SkPath.h> #include <SkRegion.h> #include <SkTLazy.h> -#include <SkPorterDuff.h> #include <cutils/compiler.h> #include "CanvasState.h" @@ -190,14 +189,6 @@ public: virtual void onSnapshotRestored(const Snapshot& removed, const Snapshot& restored) { } virtual GLuint onGetTargetFbo() const { return -1; } - void setOverrideXfermode(int xfermode) { - if (xfermode != -1) { - SkPorterDuff::Mode porterDuffMode = static_cast<SkPorterDuff::Mode>(xfermode); - xfermode = SkPorterDuff::ToXfermodeMode(porterDuffMode); - } - mOverrideXfermode = xfermode; - }; - private: CanvasState mState; @@ -262,16 +253,10 @@ private: // If there is a draw filter apply it here and store the modified paint // so that we don't need to modify the paint every time we access it. - SkTLazy<SkPaint> localPaint; + SkTLazy<SkPaint> filteredPaint; if (mDrawFilter.get()) { - paint = localPaint.set(*paint); - mDrawFilter->filter(localPaint.get(), SkDrawFilter::kPaint_Type); - } - - if (mOverrideXfermode != -1) { - SkPaint* overriddenPaint = localPaint.set(*paint); - overriddenPaint->setXfermodeMode(static_cast<SkXfermode::Mode>(mOverrideXfermode)); - paint = overriddenPaint; + paint = filteredPaint.init(); + mDrawFilter->filter(filteredPaint.get(), SkDrawFilter::kPaint_Type); } // compute the hash key for the paint and check the cache. @@ -349,9 +334,6 @@ private: DeferredBarrierType mDeferredBarrierType; bool mHighContrastText; - // -1 if unset, or SkXfermode::Mode value if set - int mOverrideXfermode; - int mRestoreSaveCount; SkAutoTUnref<SkDrawFilter> mDrawFilter; |