[whatwg] Proposal: change 2D canvas currentTransform to getter method

Hello all,

The recently added currentTransform attribute on CanvasRenderingContext2D
gives shared access to the rendering context's transform. By "shared", I
mean:

a) this code modifies the CTM:
var matrix = context.currentTransform;
matrix.a = 2;

b) In this code, the second line modifies matrix:
var matrix = context.currentTransform;
context.scale(2, 2);

This behavior is probably not what most developers would expect.
I would like to propose changing this to a getter method instead.  We
already have a setter method (setTransform).

In another thread entitled "Canvas Path.addPath SVGMatrix not optimal",
Dirk Schulze proposed using the name getCTM, which would be consistent with
the SVGLocatable interface, where getCTM returns an SVGMatrix. On the other
hand, we could call it getTransform to be consistent with the existing
setTransform on CRC2D. Opinions? Perhaps we should also have an overload of
setTransform (or setCTM) that would take an SVGMatrix.

First of all, have any browsers shipped currentTransform yet?

Thoughts?

    -Justin Novosad

Received on Thursday, 20 March 2014 17:59:54 UTC