mirror of
https://github.com/servo/servo.git
synced 2025-09-30 16:49:16 +01:00
layout: Fix logic for transforms with non-invertible matrix (#37147)
When the the current transformation matrix of a box isn't invertible, the box and its content shouldn't be displayed. However, the logic was broken: - It was only checking the `transform` property, but not individual transform properties like `scale`. - It was treating matrices with m₁₁=0 or m₂₂=0 and non-invertible, even when they can still be invertible and have a visible outcome. - When m₁₁=0 or m₂₂=0 weren't caused by `transform`, it was replacing the matrix with the identity. Testing: Adding new WPT Fixes: #37146 Signed-off-by: Oriol Brufau <obrufau@igalia.com>
This commit is contained in:
parent
fef1dd9ea0
commit
ac06b1cfcf
4 changed files with 114 additions and 24 deletions
26
tests/wpt/meta/MANIFEST.json
vendored
26
tests/wpt/meta/MANIFEST.json
vendored
|
@ -279684,6 +279684,19 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"individual-transform-3.html": [
|
||||
"2c81cb12156134ee8deca6abf0043848ac8bc750",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/reference/ref-filled-green-200px-square.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"stacking-context-001.html": [
|
||||
"1a754c5d70b607396ffe2db1d04f2294aeca1041",
|
||||
[
|
||||
|
@ -284738,6 +284751,19 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"transform-matrix-009.html": [
|
||||
"81f04db0d103202180aba2625205643c376483af",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/reference/ref-filled-green-200px-square.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"transform-origin": {
|
||||
"svg-origin-length-001.html": [
|
||||
"2f2256361cadd4f69aa08fd775a4305219a41fdd",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue