Attached is my white-room implementation of KWQWMatrix. It's very simple and uses CGAffineTransform for everything. But it's enough to get other projects up and running correctly on KWQ.
Created attachment 2761 [details] adds a real qwmatrix implementation, and removes stub from KWQPixmap.h
Comment on attachment 2761 [details] adds a real qwmatrix implementation, and removes stub from KWQPixmap.h Seems like both your comments here are right. QWMatrix indeed takes degrees while CGAffineTransform takes radians. And the behavior of invert() on a singular matrix would not match between Qt and CG.
Created attachment 2776 [details] Fixes the two issues mjs raised
Created attachment 2801 [details] project file diff
Comment on attachment 2801 [details] project file diff r=me assuming you tested