Created attachment 393829 [details] run demo on ios device and check console output Steps to reproduce the problem: 1. Visit https://jsfiddle.net/Lxj0cuso/2 or run attached demo with open console What is the expected behavior? Expected output: ctm.a= 2 ctm.d= 2 scale: 2 What went wrong? ios output: ctm.a= 1 ctm.d= 1 scale: 2 On windows running chrome the a and d value of the matrix represent the scale factor (2) On iOS the values are both 1 but the scale is applied correctly, Chrome version: 76.0.3809.81
I'm getting the reportedly incorrect output from Safari on macOS too.
<rdar://problem/60611550>
Created attachment 402280 [details] Expected result (Chrome) https://jsfiddle.net/z8y6bcrg/3/
I think I've run into the same issue but with a rotation on the ancestor.
I may be wrong about this, but given that both getScreenCTM() and getBoundingClientRect() fail under one condition or another (https://bugs.webkit.org/show_bug.cgi?id=212640), there doesn't appear to be any way to reliably translate a coordinate from a responsive SVG to client space...
This still appears broken in iOS 15.5. Have there been any updates on rdar://problem/60611550 which can be shared here?
*** Safari 16 on macOS 12.6 *** ctm.a= 1 ctm.d= 1 scale: 2 *** Safari Technology Preview 154 *** ctm.a= 1 ctm.d= 1 scale: 2 *** Firefox Nightly 107 *** ctm.a= 1 ctm.d= 1 scale: 2 *** Chrome Canary 108 *** ctm.a= 2 ctm.d= 2 scale: 2 ____ Just wanted to share updated results. Thanks! Is it something LBSE might fix?
Indeed fully fixed in LBSE - but not upstreamed yet. I also have new test cases for various scenarios. Stay tuned