summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJabier Arraiza Cenoz <jabier.arraiza@marker.es>2014-01-06 21:30:35 +0000
committer~suv <suv-sf@users.sourceforge.net>2014-01-06 21:30:35 +0000
commitdec7bb8bfd978b71f8b1b5bb8f83fb331adcb31e (patch)
tree89fe54e125746869562a3e8d54d35e6ee6e63b8d
parentOnly display snapping tooltip if source / target are defined (LP #1255764) (diff)
downloadinkscape-dec7bb8bfd978b71f8b1b5bb8f83fb331adcb31e.tar.gz
inkscape-dec7bb8bfd978b71f8b1b5bb8f83fb331adcb31e.zip
Fix transforming shapes with path effect applied (bug #1247324)
Fixed bugs: - https://launchpad.net/bugs/1247324 (bzr r12884)
-rw-r--r--src/sp-ellipse.cpp5
-rw-r--r--src/sp-spiral.cpp5
-rw-r--r--src/sp-star.cpp5
3 files changed, 15 insertions, 0 deletions
diff --git a/src/sp-ellipse.cpp b/src/sp-ellipse.cpp
index 7e5dda871..697b80608 100644
--- a/src/sp-ellipse.cpp
+++ b/src/sp-ellipse.cpp
@@ -506,6 +506,11 @@ void SPGenericEllipse::set_shape()
Geom::Affine SPGenericEllipse::set_transform(Geom::Affine const &xform)
{
+ // Allow live effects
+ if (hasPathEffect() && pathEffectsEnabled()) {
+ return xform;
+ }
+
/* Calculate ellipse start in parent coords. */
Geom::Point pos(Geom::Point(this->cx.computed, this->cy.computed) * xform);
diff --git a/src/sp-spiral.cpp b/src/sp-spiral.cpp
index ffb875f2a..9ef73d56d 100644
--- a/src/sp-spiral.cpp
+++ b/src/sp-spiral.cpp
@@ -440,6 +440,11 @@ Geom::Affine SPSpiral::set_transform(Geom::Affine const &xform)
return xform;
}
+ // Allow live effects
+ if (hasPathEffect() && pathEffectsEnabled()) {
+ return xform;
+ }
+
/* Calculate spiral start in parent coords. */
Geom::Point pos( Geom::Point(this->cx, this->cy) * xform );
diff --git a/src/sp-star.cpp b/src/sp-star.cpp
index da10eeaa3..eac33ed7b 100644
--- a/src/sp-star.cpp
+++ b/src/sp-star.cpp
@@ -520,6 +520,11 @@ Geom::Affine SPStar::set_transform(Geom::Affine const &xform)
return xform;
}
+ // Allow live effects
+ if (hasPathEffect() && pathEffectsEnabled()) {
+ return xform;
+ }
+
/* Calculate star start in parent coords. */
Geom::Point pos( this->center * xform );