Skip to content

layout: Make the implementation of used TransformStyle more complete - #60593

Merged
servo-wpt-sync merged 1 commit into
web-platform-tests:masterfrom
servo:servo_export_45629
Jun 16, 2026
Merged

layout: Make the implementation of used TransformStyle more complete#60593
servo-wpt-sync merged 1 commit into
web-platform-tests:masterfrom
servo:servo_export_45629

Conversation

@servo-wpt-sync

@servo-wpt-sync servo-wpt-sync commented Jun 12, 2026

Copy link
Copy Markdown
Collaborator

Stylo was using a very incomplete method for calculating the used
TransformStyle for boxes, which didn't incorporate all of the grouping
properties from the specification. This change moves the functionality
into Servo (as cannot properly compute this value without
FragmentFlags) and makes it more complete. We still do not process the
value of contain, mask-image, and mask-border-source as we do not
support those values yet.

Incidentally, this also fixes a panic that we were causing in WebRender,
probably by going down a path that Gecko does not exercise.

Stylo PR: servo/stylo#388

Testing: This adds a new crashtest. Three other WPT tests start to pass.
Fixes: #42476.

Reviewed in servo/servo#45629

@wpt-pr-bot wpt-pr-bot left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The review process for this patch is being conducted in the Servo project.

@servo-wpt-sync servo-wpt-sync changed the title layout: Consistenly use Stylo's more complete get_used_transform_style layout: Make the implementation of used TransformStyle more complete Jun 13, 2026
@servo-wpt-sync
servo-wpt-sync force-pushed the servo_export_45629 branch 4 times, most recently from d0598d3 to addde8f Compare June 16, 2026 13:23
Stylo was using a very incomplete method for calculating the used
`TransformStyle` for boxes, which didn't incorporate all of the grouping
properties from the specification. This change moves the functionality
into Servo (as cannot properly compute this value without
`FragmentFlags`) and makes it more complete. We still do not process the
value of `contain`, `mask-iamge`, and `mask-boarder-source` as we do not
support those values yet.

Incidentally, this also fixes a panic that we were causing in WebRender,
probably by going down a path that Gecko does not exercise.

Stylo PR: servo/stylo#388

Signed-off-by: Martin Robinson <martin@abandonedwig.info>
@servo-wpt-sync
servo-wpt-sync merged commit 3b5dbef into web-platform-tests:master Jun 16, 2026
28 checks passed
@servo-wpt-sync
servo-wpt-sync deleted the servo_export_45629 branch June 16, 2026 18:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment