RESOLVED DUPLICATE of bug 275993 195790
transform matrix which cannot be decomposed shouldn't be interpolated with other value
https://bugs.webkit.org/show_bug.cgi?id=195790
Summary transform matrix which cannot be decomposed shouldn't be interpolated with ot...
Xidorn Quan
Reported 2019-03-14 20:34:17 PDT
Created attachment 364765 [details] testcase Steps to reproduce: 1. open the attached testcase 2. click the "toggle" button and observe 3. click it again Actual result: The rectangle animates when it shows and hides. Expected result: The rectangle should just show and hide without any animation. Explanation: Here I use `transform: matrix(0, 0, 0, 0, 0, 0)` to hide the rectangle. This is a matrix which cannot be decomposed. Based on the spec, this value should not be interpolated with other values. It works as expected on Firefox and Chrome.
Attachments
testcase (424 bytes, text/html)
2019-03-14 20:34 PDT, Xidorn Quan
no flags
Radar WebKit Bug Importer
Comment 1 2019-03-16 12:10:53 PDT
Ahmad Saleem
Comment 2 2022-10-25 01:21:33 PDT
I am able to reproduce this bug in Safari 16.1 and Safari Technology Preview 156 where the toggling back leads to animations while Chrome Canary 109 and Firefox Nightly 108 does not animate. I know there are fixes around transform matrix in Webkit ToT but since they are not in STP, I cannot verify whether those fixes would result in fixing this or not. Thanks!
Antoine Quint
Comment 3 2022-10-25 01:50:31 PDT
This persists on ToT as well.
Antoine Quint
Comment 4 2022-10-25 01:56:35 PDT
The relevant spec text here is at the end of https://w3c.github.io/csswg-drafts/css-transforms-1/#matrix-interpolation: "If one of the matrices for interpolation is non-invertible, the used animation function must fall-back to a discrete animation according to the rules of the respective animation specification."
Antoine Quint
Comment 5 2022-10-25 02:04:45 PDT
We seem to have the necessary logic to handle this in TransformOperations::shouldFallBackToDiscreteAnimation() and TransformOperations::blend(), but I wonder if we're running animations with acceleration here and thus not going through this code path.
Ahmad Saleem
Comment 6 2024-06-28 15:14:35 PDT
@Antoine - seems to be fixed on WebKit TOT (280466@main). It might be fixed by your patch - https://commits.webkit.org/280466@main Bug 275993. Marking this as "RESOLVED CONFIGURATION CHANGED".
Antoine Quint
Comment 7 2024-07-01 04:47:53 PDT
Indeed this progressed with 280466@main, so marking as dupe of 275993. *** This bug has been marked as a duplicate of bug 275993 ***
Note You need to log in before you can comment on or make changes to this bug.