Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6bcf223b authored by Chris Craik's avatar Chris Craik Committed by Android (Google) Code Review
Browse files

Merge "Revert "Add a way to override Xfermode""

parents 158b6c98 da3198a5
Loading
Loading
Loading
Loading
+0 −11
Original line number Original line Diff line number Diff line
@@ -991,15 +991,4 @@ class GLES20Canvas extends HardwareCanvas {
            int indexOffset, int indexCount, Paint paint) {
            int indexOffset, int indexCount, Paint paint) {
        // TODO: Implement
        // 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);
}
}
+0 −8
Original line number Original line Diff line number Diff line
@@ -166,12 +166,6 @@ static jint android_view_GLES20Canvas_getMaxTextureHeight(JNIEnv* env, jobject c
    return Caches::getInstance().maxTextureSize;
    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
// State
// ----------------------------------------------------------------------------
// ----------------------------------------------------------------------------
@@ -959,8 +953,6 @@ static JNINativeMethod gMethods[] = {
    { "nGetMaximumTextureWidth",  "()I",       (void*) android_view_GLES20Canvas_getMaxTextureWidth },
    { "nGetMaximumTextureWidth",  "()I",       (void*) android_view_GLES20Canvas_getMaxTextureWidth },
    { "nGetMaximumTextureHeight", "()I",       (void*) android_view_GLES20Canvas_getMaxTextureHeight },
    { "nGetMaximumTextureHeight", "()I",       (void*) android_view_GLES20Canvas_getMaxTextureHeight },


    { "nSetOverrideXfermode", "(JI)V",       (void*) android_view_GLES20Canvas_setOverrideXfermode },

#endif
#endif
};
};


+0 −9
Original line number Original line Diff line number Diff line
@@ -249,15 +249,6 @@ public class Canvas {
    /** @hide */
    /** @hide */
    public void insertInorderBarrier() {}
    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
     * Return true if the device that the current layer draws into is opaque
     * (i.e. does not support per-pixel alpha).
     * (i.e. does not support per-pixel alpha).
+0 −1
Original line number Original line Diff line number Diff line
@@ -41,7 +41,6 @@ DisplayListRenderer::DisplayListRenderer()
    , mHasDeferredTranslate(false)
    , mHasDeferredTranslate(false)
    , mDeferredBarrierType(kBarrier_None)
    , mDeferredBarrierType(kBarrier_None)
    , mHighContrastText(false)
    , mHighContrastText(false)
    , mOverrideXfermode(-1)
    , mRestoreSaveCount(-1) {
    , mRestoreSaveCount(-1) {
}
}


+3 −21
Original line number Original line Diff line number Diff line
@@ -23,7 +23,6 @@
#include <SkPath.h>
#include <SkPath.h>
#include <SkRegion.h>
#include <SkRegion.h>
#include <SkTLazy.h>
#include <SkTLazy.h>
#include <SkPorterDuff.h>
#include <cutils/compiler.h>
#include <cutils/compiler.h>


#include "CanvasState.h"
#include "CanvasState.h"
@@ -190,14 +189,6 @@ public:
    virtual void onSnapshotRestored(const Snapshot& removed, const Snapshot& restored) { }
    virtual void onSnapshotRestored(const Snapshot& removed, const Snapshot& restored) { }
    virtual GLuint onGetTargetFbo() const { return -1; }
    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:
private:


    CanvasState mState;
    CanvasState mState;
@@ -262,16 +253,10 @@ private:


        // If there is a draw filter apply it here and store the modified paint
        // 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.
        // so that we don't need to modify the paint every time we access it.
        SkTLazy<SkPaint> localPaint;
        SkTLazy<SkPaint> filteredPaint;
        if (mDrawFilter.get()) {
        if (mDrawFilter.get()) {
           paint = localPaint.set(*paint);
           paint = filteredPaint.init();
           mDrawFilter->filter(localPaint.get(), SkDrawFilter::kPaint_Type);
           mDrawFilter->filter(filteredPaint.get(), SkDrawFilter::kPaint_Type);
        }

        if (mOverrideXfermode != -1) {
            SkPaint* overriddenPaint = localPaint.set(*paint);
            overriddenPaint->setXfermodeMode(static_cast<SkXfermode::Mode>(mOverrideXfermode));
            paint = overriddenPaint;
        }
        }


        // compute the hash key for the paint and check the cache.
        // compute the hash key for the paint and check the cache.
@@ -349,9 +334,6 @@ private:
    DeferredBarrierType mDeferredBarrierType;
    DeferredBarrierType mDeferredBarrierType;
    bool mHighContrastText;
    bool mHighContrastText;


    // -1 if unset, or SkXfermode::Mode value if set
    int mOverrideXfermode;

    int mRestoreSaveCount;
    int mRestoreSaveCount;


    SkAutoTUnref<SkDrawFilter> mDrawFilter;
    SkAutoTUnref<SkDrawFilter> mDrawFilter;