mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
As per [w3.org/TR/filter-effects-1#FilterProperty](https://www.w3.org/TR/filter-effects-1/#FilterProperty), `filter` shouldn't make the root element establish a containing block for absolute and fixed positioned descendants. `will-change: filter` has matching behavior. This PR adds a check for if we are the root element before establishing such a block. To know if we are the root element, we look at the `FragmentFlags` passed in. Previously for our function, these were dummy flags, always constructed as empty. Thus, this PR also makes sure the correct FragmentFlags are passed down the chain to the function `establishes_containing_block_for_all_descendants`. Testing: - `/css/filter-effects/filtered-html-is-not-container.html` now passes - `/css/css-will-change/will-change-fixedpos-cb-003.html` now passes - Manual tests are working Fixes: #35391 --------- Signed-off-by: haval0 <56519858+haval0@users.noreply.github.com> Signed-off-by: Oriol Brufau <obrufau@igalia.com> Co-authored-by: Oriol Brufau <obrufau@igalia.com> |
||
---|---|---|
.. | ||
will-change-abspos-cb-003.html.ini | ||
will-change-fixedpos-cb-004.html.ini | ||
will-change-fixedpos-cb-005.html.ini | ||
will-change-fixpos-cb-contain-1.html.ini | ||
will-change-fixpos-cb-offset-path-1.html.ini | ||
will-change-fixpos-cb-webkit-perspective-1.html.ini | ||
will-change-stacking-context-backdrop-filter-1.html.ini | ||
will-change-stacking-context-mask-1.html.ini | ||
will-change-stacking-context-mask-image-1.html.ini | ||
will-change-stacking-context-offset-path-1.html.ini | ||
will-change-stacking-context-view-transition-name-1.html.ini |