snapshot: Reorder color matrix nodes containing a transform node
A color matrix node that contains a transform node can also be expressed the other way around, as a transform node containing a color matrix node. In the general case, the color matrix node will have to draw its child to a texture so it can color every pixel of that texture, but the renderers can short-cut this if the child of the color matrix node is already a texture node. So if we have a node tree like Color Matrix - Transform - Texture The renderer would have to either check the grandchild of the color matrix or simply fall back to rendering the transform node to a texture. In the new configuration: Transform - Color Matrix - Texture The renderer can easily see that the child node of the color matrix node is a texture, and skip rendering it to a texture. This is for example happening in current Adwaita for spinners, which are rotated symbolics.
Showing with 26 additions and 5 deletions