Loading core/jni/android/graphics/Canvas.cpp +19 −2 Original line number Diff line number Diff line Loading @@ -54,6 +54,21 @@ static uint32_t get_thread_msec() { namespace android { class ClipCopier : public SkCanvas::ClipVisitor { public: ClipCopier(SkCanvas* dstCanvas) : m_dstCanvas(dstCanvas) {} virtual void clipRect(const SkRect& rect, SkRegion::Op op, bool antialias) { m_dstCanvas->clipRect(rect, op, antialias); } virtual void clipPath(const SkPath& path, SkRegion::Op op, bool antialias) { m_dstCanvas->clipPath(path, op, antialias); } private: SkCanvas* m_dstCanvas; }; class SkCanvasGlue { public: Loading @@ -68,13 +83,15 @@ public: static void copyCanvasState(JNIEnv* env, jobject clazz, SkCanvas* srcCanvas, SkCanvas* dstCanvas) { if (srcCanvas && dstCanvas) { dstCanvas->setMatrix(srcCanvas->getTotalMatrix()); if (NULL != srcCanvas->getDevice() && NULL != dstCanvas->getDevice()) { dstCanvas->clipRegion(srcCanvas->getTotalClip()); ClipCopier copier(dstCanvas); srcCanvas->replayClips(&copier); } dstCanvas->setMatrix(srcCanvas->getTotalMatrix()); } } static void freeCaches(JNIEnv* env, jobject) { // these are called in no particular order SkImageRef_GlobalPool::SetRAMUsed(0); Loading Loading
core/jni/android/graphics/Canvas.cpp +19 −2 Original line number Diff line number Diff line Loading @@ -54,6 +54,21 @@ static uint32_t get_thread_msec() { namespace android { class ClipCopier : public SkCanvas::ClipVisitor { public: ClipCopier(SkCanvas* dstCanvas) : m_dstCanvas(dstCanvas) {} virtual void clipRect(const SkRect& rect, SkRegion::Op op, bool antialias) { m_dstCanvas->clipRect(rect, op, antialias); } virtual void clipPath(const SkPath& path, SkRegion::Op op, bool antialias) { m_dstCanvas->clipPath(path, op, antialias); } private: SkCanvas* m_dstCanvas; }; class SkCanvasGlue { public: Loading @@ -68,13 +83,15 @@ public: static void copyCanvasState(JNIEnv* env, jobject clazz, SkCanvas* srcCanvas, SkCanvas* dstCanvas) { if (srcCanvas && dstCanvas) { dstCanvas->setMatrix(srcCanvas->getTotalMatrix()); if (NULL != srcCanvas->getDevice() && NULL != dstCanvas->getDevice()) { dstCanvas->clipRegion(srcCanvas->getTotalClip()); ClipCopier copier(dstCanvas); srcCanvas->replayClips(&copier); } dstCanvas->setMatrix(srcCanvas->getTotalMatrix()); } } static void freeCaches(JNIEnv* env, jobject) { // these are called in no particular order SkImageRef_GlobalPool::SetRAMUsed(0); Loading