summaryrefslogtreecommitdiffstats
path: root/src/ui/clipboard.cpp
diff options
context:
space:
mode:
authorAlvin Penner <penner@vaxxine.com>2014-11-15 12:52:51 +0000
committerapenner <penner@vaxxine.com>2014-11-15 12:52:51 +0000
commit510c80b1b2d9a4ee700bd152d320c6963bccd358 (patch)
tree463c0831d3dd885ba267be279439b8df9f7c381e /src/ui/clipboard.cpp
parentAdd inverse subdivision chamfer to fillet chamfer LPE, feature sugested by Iv... (diff)
downloadinkscape-510c80b1b2d9a4ee700bd152d320c6963bccd358.tar.gz
inkscape-510c80b1b2d9a4ee700bd152d320c6963bccd358.zip
scale symbols when changing document units (Bug 1365451)
Fixed bugs: - https://launchpad.net/bugs/1365451 (bzr r13709)
Diffstat (limited to 'src/ui/clipboard.cpp')
-rw-r--r--src/ui/clipboard.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/ui/clipboard.cpp b/src/ui/clipboard.cpp
index 931a295d8..153ed9830 100644
--- a/src/ui/clipboard.cpp
+++ b/src/ui/clipboard.cpp
@@ -330,6 +330,13 @@ void ClipboardManagerImpl::copySymbol(Inkscape::XML::Node* symbol, gchar const*
use->setAttribute("xlink:href", id.c_str() );
// Set a default style in <use> rather than <symbol> so it can be changed.
use->setAttribute("style", style );
+
+ Inkscape::XML::Node *nv_repr = sp_desktop_namedview(inkscape_active_desktop())->getRepr();
+ gdouble scale_units = Inkscape::Util::Quantity::convert(1, nv_repr->attribute("inkscape:document-units"), "px");
+ gchar *transform_str = sp_svg_transform_write(Geom::Scale(scale_units, scale_units));
+ use->setAttribute("transform", transform_str);
+ g_free(transform_str);
+
_root->appendChild(use);
// This min and max sets offsets, we don't have any so set to zero.