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

Commit 25bea647 authored by Derek Sollenberger's avatar Derek Sollenberger
Browse files

Merge remote-tracking branch 'goog/master-chromium' into 'goog/master'

bug: 6906025
Change-Id: Ica9524b017abb6124f6cd0e11fd36c64f2cee68a
parents b8495145 5875cc6b
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -497,22 +497,22 @@ class GLES20Canvas extends HardwareCanvas {

    @Override
    public boolean quickReject(float left, float top, float right, float bottom, EdgeType type) {
        return nQuickReject(mRenderer, left, top, right, bottom, type.nativeInt);
        return nQuickReject(mRenderer, left, top, right, bottom);
    }
    
    private static native boolean nQuickReject(int renderer, float left, float top,
            float right, float bottom, int edge);
            float right, float bottom);

    @Override
    public boolean quickReject(Path path, EdgeType type) {
        path.computeBounds(mPathBounds, true);
        return nQuickReject(mRenderer, mPathBounds.left, mPathBounds.top,
                mPathBounds.right, mPathBounds.bottom, type.nativeInt);
                mPathBounds.right, mPathBounds.bottom);
    }

    @Override
    public boolean quickReject(RectF rect, EdgeType type) {
        return nQuickReject(mRenderer, rect.left, rect.top, rect.right, rect.bottom, type.nativeInt);
        return nQuickReject(mRenderer, rect.left, rect.top, rect.right, rect.bottom);
    }

    ///////////////////////////////////////////////////////////////////////////
+0 −1
Original line number Diff line number Diff line
@@ -75,7 +75,6 @@ public class Surface implements Parcelable {

    private int mGenerationId; // incremented each time mNativeSurface changes
    private final Canvas mCanvas = new CompatibleCanvas();
    private int mCanvasSaveCount; // Canvas save count at time of lockCanvas()

    // The Translator for density compatibility mode.  This is used for scaling
    // the canvas to perform the appropriate density transformation.
+2 −1
Original line number Diff line number Diff line
@@ -162,7 +162,8 @@ LOCAL_C_INCLUDES += \
	external/skia/include/effects \
	external/skia/include/images \
	external/skia/include/ports \
	external/skia/src/ports \
	external/skia/src/core \
	external/skia/src/images \
	external/skia/include/utils \
	external/sqlite/dist \
	external/sqlite/android \
+1 −1
Original line number Diff line number Diff line
@@ -231,7 +231,7 @@ static jobject doDecode(JNIEnv* env, SkStream* stream, jobject padding,
    }

    SkAutoTDelete<SkImageDecoder> add(decoder);
    SkAutoTDelete<SkBitmap> adb(bitmap, !useExistingBitmap);
    SkAutoTDelete<SkBitmap> adb(!useExistingBitmap ? bitmap : NULL);

    decoder->setPeeker(&peeker);
    if (!isPurgeable) {
+34 −25
Original line number Diff line number Diff line
@@ -65,6 +65,16 @@ public:
        return bitmap ? new SkCanvas(*bitmap) : new SkCanvas;
    }
    
    static void copyCanvasState(JNIEnv* env, jobject clazz,
                                SkCanvas* srcCanvas, SkCanvas* dstCanvas) {
        if (srcCanvas && dstCanvas) {
            if (NULL != srcCanvas->getDevice() && NULL != dstCanvas->getDevice()) {
                dstCanvas->clipRegion(srcCanvas->getTotalClip());
            }
            dstCanvas->setMatrix(srcCanvas->getTotalMatrix());
        }
    }

    static void freeCaches(JNIEnv* env, jobject) {
        // these are called in no particular order
        SkImageRef_GlobalPool::SetRAMUsed(0);
@@ -93,14 +103,6 @@ public:
        return canvas->getDevice()->accessBitmap(false).height();
    }

    static void setBitmap(JNIEnv* env, jobject, SkCanvas* canvas, SkBitmap* bitmap) {
        if (bitmap) {
            canvas->setBitmapDevice(*bitmap);
        } else {
            canvas->setDevice(NULL);
        }
    }
 
    static int saveAll(JNIEnv* env, jobject jcanvas) {
        NPE_CHECK_RETURN_ZERO(env, jcanvas);
        return GraphicsJNI::getNativeCanvas(env, jcanvas)->save();
@@ -278,25 +280,25 @@ public:
        canvas->setDrawFilter(filter);
    }
    
    static jboolean quickReject__RectFI(JNIEnv* env, jobject, SkCanvas* canvas,
                                        jobject rect, int edgetype) {
    static jboolean quickReject__RectF(JNIEnv* env, jobject, SkCanvas* canvas,
                                        jobject rect) {
        SkRect rect_;
        GraphicsJNI::jrectf_to_rect(env, rect, &rect_);
        return canvas->quickReject(rect_, (SkCanvas::EdgeType)edgetype);
        return canvas->quickReject(rect_);
    }

    static jboolean quickReject__PathI(JNIEnv* env, jobject, SkCanvas* canvas,
                                       SkPath* path, int edgetype) {
        return canvas->quickReject(*path, (SkCanvas::EdgeType)edgetype);
    static jboolean quickReject__Path(JNIEnv* env, jobject, SkCanvas* canvas,
                                       SkPath* path) {
        return canvas->quickReject(*path);
    }

    static jboolean quickReject__FFFFI(JNIEnv* env, jobject, SkCanvas* canvas,
    static jboolean quickReject__FFFF(JNIEnv* env, jobject, SkCanvas* canvas,
                                       jfloat left, jfloat top, jfloat right,
                                       jfloat bottom, int edgetype) {
                                       jfloat bottom) {
        SkRect r;
        r.set(SkFloatToScalar(left), SkFloatToScalar(top),
              SkFloatToScalar(right), SkFloatToScalar(bottom));
        return canvas->quickReject(r, (SkCanvas::EdgeType)edgetype);
        return canvas->quickReject(r);
    }
 
    static void drawRGB(JNIEnv* env, jobject, SkCanvas* canvas,
@@ -930,12 +932,19 @@ static void doDrawTextDecorations(SkCanvas* canvas, jfloat x, jfloat y, jfloat l
                              jobject bounds) {
        SkRect   r;
        SkIRect ir;
        bool     result = canvas->getClipBounds(&r, SkCanvas::kBW_EdgeType);
        bool     result = canvas->getClipBounds(&r);

        if (!result) {
            r.setEmpty();
        } else {
            // ensure the clip is not larger than the canvas
            SkRect canvasRect;
            SkISize deviceSize = canvas->getDeviceSize();
            canvasRect.iset(0, 0, deviceSize.fWidth, deviceSize.fHeight);
            r.intersect(canvasRect);
        }
        r.round(&ir);

        (void)GraphicsJNI::irect_to_jrect(ir, env, bounds);
        return result;
    }
@@ -949,10 +958,10 @@ static void doDrawTextDecorations(SkCanvas* canvas, jfloat x, jfloat y, jfloat l
static JNINativeMethod gCanvasMethods[] = {
    {"finalizer", "(I)V", (void*) SkCanvasGlue::finalizer},
    {"initRaster","(I)I", (void*) SkCanvasGlue::initRaster},
    {"copyNativeCanvasState","(II)V", (void*) SkCanvasGlue::copyCanvasState},
    {"isOpaque","()Z", (void*) SkCanvasGlue::isOpaque},
    {"getWidth","()I", (void*) SkCanvasGlue::getWidth},
    {"getHeight","()I", (void*) SkCanvasGlue::getHeight},
    {"native_setBitmap","(II)V", (void*) SkCanvasGlue::setBitmap},
    {"save","()I", (void*) SkCanvasGlue::saveAll},
    {"save","(I)I", (void*) SkCanvasGlue::save},
    {"native_saveLayer","(ILandroid/graphics/RectF;II)I",
@@ -984,10 +993,10 @@ static JNINativeMethod gCanvasMethods[] = {
    {"native_getClipBounds","(ILandroid/graphics/Rect;)Z",
        (void*) SkCanvasGlue::getClipBounds},
    {"native_getCTM", "(II)V", (void*)SkCanvasGlue::getCTM},
    {"native_quickReject","(ILandroid/graphics/RectF;I)Z",
        (void*) SkCanvasGlue::quickReject__RectFI},
    {"native_quickReject","(III)Z", (void*) SkCanvasGlue::quickReject__PathI},
    {"native_quickReject","(IFFFFI)Z", (void*)SkCanvasGlue::quickReject__FFFFI},
    {"native_quickReject","(ILandroid/graphics/RectF;)Z",
        (void*) SkCanvasGlue::quickReject__RectF},
    {"native_quickReject","(II)Z", (void*) SkCanvasGlue::quickReject__Path},
    {"native_quickReject","(IFFFF)Z", (void*)SkCanvasGlue::quickReject__FFFF},
    {"native_drawRGB","(IIII)V", (void*) SkCanvasGlue::drawRGB},
    {"native_drawARGB","(IIIII)V", (void*) SkCanvasGlue::drawARGB},
    {"native_drawColor","(II)V", (void*) SkCanvasGlue::drawColor__I},
Loading