Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(547)

Unified Diff: Source/core/html/canvas/CanvasRenderingContext2D.cpp

Issue 24233004: Support currentTransform in 2D Canvas. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Consider Return value optimization. Check assignment operator correctly. Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/html/canvas/CanvasRenderingContext2D.cpp
diff --git a/Source/core/html/canvas/CanvasRenderingContext2D.cpp b/Source/core/html/canvas/CanvasRenderingContext2D.cpp
index 3225ecd6344fed465e421df94628b5dea72dc844..52d0108691080c800ae1bc8835327c49a770d3a4 100644
--- a/Source/core/html/canvas/CanvasRenderingContext2D.cpp
+++ b/Source/core/html/canvas/CanvasRenderingContext2D.cpp
@@ -596,6 +596,11 @@ void CanvasRenderingContext2D::setGlobalCompositeOperation(const String& operati
c->setCompositeOperation(op, blendMode);
}
+void CanvasRenderingContext2D::setCurrentTransform(const SVGMatrix& currentTransform)
+{
+ setTransform(currentTransform.a(), currentTransform.b(), currentTransform.c(), currentTransform.d(), currentTransform.e(), currentTransform.f());
+}
+
void CanvasRenderingContext2D::scale(float sx, float sy)
{
GraphicsContext* c = drawingContext();
@@ -698,12 +703,12 @@ void CanvasRenderingContext2D::transform(float m11, float m12, float m21, float
realizeSaves();
+ modifiableState().m_transform = newTransform;
if (!newTransform.isInvertible()) {
modifiableState().m_invertibleCTM = false;
return;
}
- modifiableState().m_transform = newTransform;
c->concatCTM(transform);
m_path.transform(transform.inverse());
}

Powered by Google App Engine
This is Rietveld 408576698