summaryrefslogtreecommitdiffstats
path: root/src/sp-item-group.cpp
diff options
context:
space:
mode:
authorsu_v <suv-sf@users.sourceforge.net>2014-09-25 09:35:59 +0000
committer~suv <suv-sf@users.sourceforge.net>2014-09-25 09:35:59 +0000
commitea10837f7a960bb9b914df1f25798c0b3e1da60f (patch)
tree18cf55bd22a8104c8578f1fcb1f966390599e043 /src/sp-item-group.cpp
parentosx-build.sh: sync with osxmenu (whitespace, formatting) (diff)
parentFix for #1334792. Correct inheritance for 'line-height' property. (diff)
downloadinkscape-ea10837f7a960bb9b914df1f25798c0b3e1da60f.tar.gz
inkscape-ea10837f7a960bb9b914df1f25798c0b3e1da60f.zip
update to trunk (r13564)
(bzr r13506.1.107)
Diffstat (limited to 'src/sp-item-group.cpp')
-rw-r--r--src/sp-item-group.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/sp-item-group.cpp b/src/sp-item-group.cpp
index a24056630..b65be8f22 100644
--- a/src/sp-item-group.cpp
+++ b/src/sp-item-group.cpp
@@ -680,7 +680,15 @@ void SPGroup::scaleChildItemsRec(Geom::Scale const &sc, Geom::Point const &p, bo
SPItem *item = NULL;
if (SP_ITEM(o)->clip_ref->getObject()) {
item = SP_ITEM(SP_ITEM(o)->clip_ref->getObject()->firstChild());
- } else if (SP_ITEM(o)->mask_ref->getObject()) {
+ }
+ if (item != NULL) {
+ Geom::Affine tdoc2dt = Geom::Scale(1, -1) * Geom::Translate(p); // re-create doc2dt()
+ Geom::Affine ti2doc = SP_ITEM(o)->i2doc_affine();
+ item->set_i2d_affine(ti2doc * sc * ti2doc.inverse() * tdoc2dt);
+ item->doWriteTransform(item->getRepr(), item->transform, NULL, true);
+ }
+ item = NULL;
+ if (SP_ITEM(o)->mask_ref->getObject()) {
item = SP_ITEM(SP_ITEM(o)->mask_ref->getObject()->firstChild());
}
if (item != NULL) {