diff --git a/gfx/wr/webrender/src/prim_store/image.rs b/gfx/wr/webrender/src/prim_store/image.rs index bd72572540ce..922bd5b80cd9 100644 --- a/gfx/wr/webrender/src/prim_store/image.rs +++ b/gfx/wr/webrender/src/prim_store/image.rs @@ -76,7 +76,6 @@ pub struct Image { pub stretch_size: SizeKey, pub tile_spacing: SizeKey, pub color: ColorU, - pub sub_rect: Option, pub image_rendering: ImageRendering, pub alpha_type: AlphaType, } @@ -122,7 +121,6 @@ pub struct ImageData { pub color: ColorF, pub source: ImageSource, pub image_rendering: ImageRendering, - pub sub_rect: Option, pub alpha_type: AlphaType, } @@ -134,7 +132,6 @@ impl From for ImageData { stretch_size: image.stretch_size.into(), tile_spacing: image.tile_spacing.into(), source: ImageSource::Default, - sub_rect: image.sub_rect, image_rendering: image.image_rendering, alpha_type: image.alpha_type, } @@ -172,18 +169,6 @@ impl ImageData { }; } - // Work out whether this image is a normal / simple type, or if - // we need to pre-render it to the render task cache. - if let Some(rect) = self.sub_rect { - // We don't properly support this right now. - debug_assert!(!is_tiled); - self.source = ImageSource::Cache { - // Size in device-pixels we need to allocate in render task cache. - size: rect.size, - handle: None, - }; - } - let mut is_opaque = image_properties.descriptor.is_opaque(); let request = ImageRequest { key: self.key, @@ -211,7 +196,7 @@ impl ImageData { let image_cache_key = ImageCacheKey { request, - texel_rect: self.sub_rect, + texel_rect: None, }; let target_kind = if image_properties.descriptor.format.bytes_per_pixel() == 1 { RenderTargetKind::Alpha @@ -343,7 +328,6 @@ impl CreateShadow for Image { tile_spacing: self.tile_spacing, stretch_size: self.stretch_size, key: self.key, - sub_rect: self.sub_rect, image_rendering: self.image_rendering, alpha_type: self.alpha_type, color: shadow.color.into(), @@ -518,9 +502,9 @@ fn test_struct_sizes() { // test expectations and move on. // (b) You made a structure larger. This is not necessarily a problem, but should only // be done with care, and after checking if talos performance regresses badly. - assert_eq!(mem::size_of::(), 52, "Image size changed"); - assert_eq!(mem::size_of::(), 112, "ImageTemplate size changed"); - assert_eq!(mem::size_of::(), 72, "ImageKey size changed"); + assert_eq!(mem::size_of::(), 32, "Image size changed"); + assert_eq!(mem::size_of::(), 92, "ImageTemplate size changed"); + assert_eq!(mem::size_of::(), 52, "ImageKey size changed"); assert_eq!(mem::size_of::(), 32, "YuvImage size changed"); assert_eq!(mem::size_of::(), 60, "YuvImageTemplate size changed"); assert_eq!(mem::size_of::(), 52, "YuvImageKey size changed"); diff --git a/gfx/wr/webrender/src/scene_building.rs b/gfx/wr/webrender/src/scene_building.rs index 8e39af6c21cf..be03baee65bb 100644 --- a/gfx/wr/webrender/src/scene_building.rs +++ b/gfx/wr/webrender/src/scene_building.rs @@ -955,7 +955,6 @@ impl<'a> SceneBuilder<'a> { &layout, layout.rect.size, LayoutSize::zero(), - None, info.image_key, info.image_rendering, info.alpha_type, @@ -980,7 +979,6 @@ impl<'a> SceneBuilder<'a> { &layout, stretch_size, info.tile_spacing, - None, info.image_key, info.image_rendering, info.alpha_type, @@ -3098,7 +3096,6 @@ impl<'a> SceneBuilder<'a> { info: &LayoutPrimitiveInfo, stretch_size: LayoutSize, mut tile_spacing: LayoutSize, - sub_rect: Option, image_key: ImageKey, image_rendering: ImageRendering, alpha_type: AlphaType, @@ -3111,19 +3108,6 @@ impl<'a> SceneBuilder<'a> { .. *info }; - let sub_rect = sub_rect.map(|texel_rect| { - DeviceIntRect::new( - DeviceIntPoint::new( - texel_rect.uv0.x as i32, - texel_rect.uv0.y as i32, - ), - DeviceIntSize::new( - (texel_rect.uv1.x - texel_rect.uv0.x) as i32, - (texel_rect.uv1.y - texel_rect.uv0.y) as i32, - ), - ) - }); - self.add_primitive( spatial_node_index, clip_chain_id, @@ -3134,7 +3118,6 @@ impl<'a> SceneBuilder<'a> { tile_spacing: tile_spacing.into(), stretch_size: stretch_size.into(), color: color.into(), - sub_rect, image_rendering, alpha_type, },