From 8bcf2a4496c29740e8be987758eaa01a8a7d5a55 Mon Sep 17 00:00:00 2001 From: bulia byak Date: Mon, 23 Oct 2006 01:49:44 +0000 Subject: factor in object's matrix expansion when querying blur radius (bzr r1842) --- src/desktop-style.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/desktop-style.cpp') diff --git a/src/desktop-style.cpp b/src/desktop-style.cpp index 7dbbfd5e8..4f5ab982e 100644 --- a/src/desktop-style.cpp +++ b/src/desktop-style.cpp @@ -1033,6 +1033,8 @@ objects_query_blur (GSList *objects, SPStyle *style_res) SPStyle *style = SP_OBJECT_STYLE (obj); if (!style) continue; + NR::Matrix i2d = sp_item_i2d_affine (SP_ITEM(obj)); + items ++; //if object has a filter @@ -1045,8 +1047,8 @@ objects_query_blur (GSList *objects, SPStyle *style_res) if(SP_IS_GAUSSIANBLUR(primitive)) { SPGaussianBlur * spblur = SP_GAUSSIANBLUR(primitive); float num = spblur->stdDeviation.getNumber(); - blur_sum += num; - if (blur_prev != -1 && num != blur_prev) + blur_sum += num * NR::expansion(i2d); + if (blur_prev != -1 && fabs (num - blur_prev) > 1e-2) // rather low tolerance because difference in blur radii is much harder to notice than e.g. difference in sizes same_blur = false; blur_prev = num; //TODO: deal with opt number, for the moment it's not necessary to the ui. -- cgit v1.2.3