diff options
| author | Marc Jeanmougin <marc@jeanmougin.fr> | 2015-08-16 19:11:47 +0000 |
|---|---|---|
| committer | Marc Jeanmougin <marcjeanmougin@free.fr> | 2015-08-16 19:11:47 +0000 |
| commit | 2f08c2af203444acbea58eb5f521013780626ee5 (patch) | |
| tree | 84b275822334e7ec32f63b264968898fe33d9659 | |
| parent | Added translations to the cmake build (1451236) (diff) | |
| download | inkscape-2f08c2af203444acbea58eb5f521013780626ee5.tar.gz inkscape-2f08c2af203444acbea58eb5f521013780626ee5.zip | |
fix for ungrouping dynamic offset displacement bug
Fixed bugs:
- https://launchpad.net/bugs/844909
(bzr r14305)
| -rw-r--r--[-rwxr-xr-x] | po/sk.po | 0 | ||||
| -rw-r--r--[-rwxr-xr-x] | po/zh_TW.po | 0 | ||||
| -rw-r--r-- | src/sp-item-group.cpp | 10 |
3 files changed, 3 insertions, 7 deletions
diff --git a/po/sk.po b/po/sk.po index 0646af233..0646af233 100755..100644 --- a/po/sk.po +++ b/po/sk.po diff --git a/po/zh_TW.po b/po/zh_TW.po index 67d3c78ad..67d3c78ad 100755..100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po diff --git a/src/sp-item-group.cpp b/src/sp-item-group.cpp index 72cd5d7fa..5d96899b1 100644 --- a/src/sp-item-group.cpp +++ b/src/sp-item-group.cpp @@ -465,7 +465,7 @@ sp_item_group_ungroup (SPGroup *group, std::vector<SPItem*> &children, bool do_d Inkscape::XML::Node *nrepr = child->getRepr()->duplicate(prepr->document()); // Merging transform - Geom::Affine ctrans; + Geom::Affine ctrans = citem->transform * g; // We should not apply the group's transformation to both a linked offset AND to its source if (dynamic_cast<SPOffset *>(citem)) { // Do we have an offset at hand (whether it's dynamic or linked)? SPItem *source = sp_offset_get_source(dynamic_cast<SPOffset *>(citem)); @@ -476,13 +476,9 @@ sp_item_group_ungroup (SPGroup *group, std::vector<SPItem*> &children, bool do_d source = sp_offset_get_source(dynamic_cast<SPOffset *>(source)); } if (source != NULL && // If true then we must be dealing with a linked offset ... - group->isAncestorOf(source) == false) { // ... of which the source is not in the same group - ctrans = citem->transform * g; // then we should apply the transformation of the group to the offset - } else { - ctrans = citem->transform; + group->isAncestorOf(source) ) { // ... of which the source is in the same group + ctrans = citem->transform; // then we should apply the transformation of the group to the offset } - } else { - ctrans = citem->transform * g; } // FIXME: constructing a transform that would fully preserve the appearance of a |
