Loading libs/hwui/CanvasState.cpp +3 −0 Original line number Diff line number Diff line Loading @@ -189,6 +189,9 @@ void CanvasState::setClippingRoundRect(LinearAllocator& allocator, mSnapshot->setClippingRoundRect(allocator, rect, radius, highPriority); } void CanvasState::setProjectionPathMask(LinearAllocator& allocator, const SkPath* path) { mSnapshot->setProjectionPathMask(allocator, path); } /////////////////////////////////////////////////////////////////////////////// // Quick Rejection Loading libs/hwui/CanvasState.h +1 −0 Original line number Diff line number Diff line Loading @@ -130,6 +130,7 @@ public: void setClippingOutline(LinearAllocator& allocator, const Outline* outline); void setClippingRoundRect(LinearAllocator& allocator, const Rect& rect, float radius, bool highPriority = true); void setProjectionPathMask(LinearAllocator& allocator, const SkPath* path); /** * Returns true if drawing in the rectangle (left, top, right, bottom) Loading libs/hwui/DeferredDisplayList.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -195,6 +195,7 @@ public: // Identical round rect clip state means both ops will clip in the same way, or not at all. // As the state objects are const, we can compare their pointers to determine mergeability if (lhs->mRoundRectClipState != rhs->mRoundRectClipState) return false; if (lhs->mProjectionPathMask != rhs->mProjectionPathMask) return false; /* Clipping compatibility check * Loading libs/hwui/DeferredDisplayList.h +1 −0 Original line number Diff line number Diff line Loading @@ -63,6 +63,7 @@ public: mat4 mMatrix; float mAlpha; const RoundRectClipState* mRoundRectClipState; const ProjectionPathMask* mProjectionPathMask; }; class OpStatePair { Loading libs/hwui/Matrix.h +6 −0 Original line number Diff line number Diff line Loading @@ -134,6 +134,12 @@ public: uint8_t getType() const; void multiplyInverse(const Matrix4& v) { Matrix4 inv; inv.loadInverse(v); multiply(inv); } void multiply(const Matrix4& v) { Matrix4 u; u.loadMultiply(*this, v); Loading Loading
libs/hwui/CanvasState.cpp +3 −0 Original line number Diff line number Diff line Loading @@ -189,6 +189,9 @@ void CanvasState::setClippingRoundRect(LinearAllocator& allocator, mSnapshot->setClippingRoundRect(allocator, rect, radius, highPriority); } void CanvasState::setProjectionPathMask(LinearAllocator& allocator, const SkPath* path) { mSnapshot->setProjectionPathMask(allocator, path); } /////////////////////////////////////////////////////////////////////////////// // Quick Rejection Loading
libs/hwui/CanvasState.h +1 −0 Original line number Diff line number Diff line Loading @@ -130,6 +130,7 @@ public: void setClippingOutline(LinearAllocator& allocator, const Outline* outline); void setClippingRoundRect(LinearAllocator& allocator, const Rect& rect, float radius, bool highPriority = true); void setProjectionPathMask(LinearAllocator& allocator, const SkPath* path); /** * Returns true if drawing in the rectangle (left, top, right, bottom) Loading
libs/hwui/DeferredDisplayList.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -195,6 +195,7 @@ public: // Identical round rect clip state means both ops will clip in the same way, or not at all. // As the state objects are const, we can compare their pointers to determine mergeability if (lhs->mRoundRectClipState != rhs->mRoundRectClipState) return false; if (lhs->mProjectionPathMask != rhs->mProjectionPathMask) return false; /* Clipping compatibility check * Loading
libs/hwui/DeferredDisplayList.h +1 −0 Original line number Diff line number Diff line Loading @@ -63,6 +63,7 @@ public: mat4 mMatrix; float mAlpha; const RoundRectClipState* mRoundRectClipState; const ProjectionPathMask* mProjectionPathMask; }; class OpStatePair { Loading
libs/hwui/Matrix.h +6 −0 Original line number Diff line number Diff line Loading @@ -134,6 +134,12 @@ public: uint8_t getType() const; void multiplyInverse(const Matrix4& v) { Matrix4 inv; inv.loadInverse(v); multiply(inv); } void multiply(const Matrix4& v) { Matrix4 u; u.loadMultiply(*this, v); Loading