[librsvg: 6/27] Blur.to_filter_spec - take a NormalizeParams




commit 59d04ad445b8ced2669e7a66844075f13784a927
Author: Federico Mena Quintero <federico gnome org>
Date:   Fri May 7 19:46:00 2021 -0500

    Blur.to_filter_spec - take a NormalizeParams

 src/filter_func.rs | 22 +++++++++-------------
 1 file changed, 9 insertions(+), 13 deletions(-)
---
diff --git a/src/filter_func.rs b/src/filter_func.rs
index d1930958..fe9f75fa 100644
--- a/src/filter_func.rs
+++ b/src/filter_func.rs
@@ -1,7 +1,7 @@
 use cssparser::Parser;
 
 use crate::coord_units::CoordUnits;
-use crate::drawing_ctx::{DrawingCtx, ViewParams};
+use crate::drawing_ctx::DrawingCtx;
 use crate::error::*;
 use crate::filter::Filter;
 use crate::filters::{
@@ -56,16 +56,11 @@ fn parse_blur<'i>(parser: &mut Parser<'i, '_>) -> Result<FilterFunction, ParseEr
 }
 
 impl Blur {
-    fn to_filter_spec(&self, values: &ComputedValues, params: &ViewParams) -> FilterSpec {
+    fn to_filter_spec(&self, params: &NormalizeParams) -> FilterSpec {
         // The 0.0 default is from the spec
-        let std_dev = self
-            .std_deviation
-            .map(|l| l.normalize(values, params))
-            .unwrap_or(0.0);
+        let std_dev = self.std_deviation.map(|l| l.to_user(params)).unwrap_or(0.0);
 
-        let params = NormalizeParams::new(values, params);
-
-        let user_space_filter = Filter::default().to_user_space(&params);
+        let user_space_filter = Filter::default().to_user_space(params);
 
         let gaussian_blur = ResolvedPrimitive {
             primitive: Primitive::default(),
@@ -74,7 +69,7 @@ impl Blur {
                 ..GaussianBlur::default()
             }),
         }
-        .into_user_space(&params);
+        .into_user_space(params);
 
         FilterSpec {
             user_space_filter,
@@ -103,11 +98,12 @@ impl FilterFunction {
         values: &ComputedValues,
         draw_ctx: &DrawingCtx,
     ) -> Result<FilterSpec, FilterResolveError> {
-        // This is the default for primitive_units
-        let params = draw_ctx.push_coord_units(CoordUnits::UserSpaceOnUse);
+        // userSpaceonUse is the default for primitive_units
+        let view_params = draw_ctx.push_coord_units(CoordUnits::UserSpaceOnUse);
+        let params = NormalizeParams::new(values, &view_params);
 
         match self {
-            FilterFunction::Blur(v) => Ok(v.to_filter_spec(values, &params)),
+            FilterFunction::Blur(v) => Ok(v.to_filter_spec(&params)),
         }
     }
 }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]