layout: respect image-rendering on border images (#38346)

Properly passes `image-rendering` down to border images.

Testing: Covered by WPT tests.

---------

Signed-off-by: lumiscosity <averyrudelphe@gmail.com>
Co-authored-by: Oriol Brufau <obrufau@igalia.com>
This commit is contained in:
lumiscosity 2025-07-30 14:57:10 +02:00 committed by GitHub
parent c7c33f5f47
commit e5334a64c4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 4 additions and 11 deletions

View file

@ -42,8 +42,8 @@ use style_traits::{CSSPixel as StyloCSSPixel, DevicePixel as StyloDevicePixel};
use webrender_api::units::{DeviceIntSize, DevicePixel, LayoutPixel, LayoutRect, LayoutSize}; use webrender_api::units::{DeviceIntSize, DevicePixel, LayoutPixel, LayoutRect, LayoutSize};
use webrender_api::{ use webrender_api::{
self as wr, BorderDetails, BoxShadowClipMode, BuiltDisplayList, ClipChainId, ClipMode, self as wr, BorderDetails, BoxShadowClipMode, BuiltDisplayList, ClipChainId, ClipMode,
CommonItemProperties, ComplexClipRegion, ImageRendering, NinePatchBorder, CommonItemProperties, ComplexClipRegion, NinePatchBorder, NinePatchBorderSource,
NinePatchBorderSource, PropertyBinding, SpatialId, SpatialTreeItemKey, units, PropertyBinding, SpatialId, SpatialTreeItemKey, units,
}; };
use wr::units::LayoutVector2D; use wr::units::LayoutVector2D;
@ -1501,7 +1501,8 @@ impl<'a> BuilderForBoxFragment<'a> {
width = size.width; width = size.width;
height = size.height; height = size.height;
NinePatchBorderSource::Image(key, ImageRendering::Auto) let image_rendering = self.fragment.style.clone_image_rendering().to_webrender();
NinePatchBorderSource::Image(key, image_rendering)
}, },
Ok(ResolvedImage::Gradient(gradient)) => { Ok(ResolvedImage::Gradient(gradient)) => {
match gradient::build(&self.fragment.style, gradient, border_image_size, builder) { match gradient::build(&self.fragment.style, gradient, border_image_size, builder) {

View file

@ -1,2 +0,0 @@
[border-image-repeat-round-003.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[border-image-repeat-round-stretch-001.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[border-image-repeat-stretch-round-001.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[image-rendering-border-image.html]
expected: FAIL