summaryrefslogtreecommitdiffstats
path: root/src/sp-use.cpp
diff options
context:
space:
mode:
authorAlvin Penner <penner@vaxxine.com>2014-07-25 21:23:13 +0000
committerapenner <penner@vaxxine.com>2014-07-25 21:23:13 +0000
commit962b4e5a31b1128cdb9dfcccac87e7449a3351f1 (patch)
tree74f1ca1973f86665a686fa97a2933a2ec88e126d /src/sp-use.cpp
parentsync with libTere version of text_reassemble.c (diff)
downloadinkscape-962b4e5a31b1128cdb9dfcccac87e7449a3351f1.tar.gz
inkscape-962b4e5a31b1128cdb9dfcccac87e7449a3351f1.zip
refresh text objects when clipping (Bug 1339305)
Fixed bugs: - https://launchpad.net/bugs/1339305 (bzr r13470)
Diffstat (limited to 'src/sp-use.cpp')
-rw-r--r--src/sp-use.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/sp-use.cpp b/src/sp-use.cpp
index 7d908a66a..e3fcd252a 100644
--- a/src/sp-use.cpp
+++ b/src/sp-use.cpp
@@ -38,6 +38,8 @@
#include "sp-use.h"
#include "sp-use-reference.h"
#include "sp-shape.h"
+#include "sp-text.h"
+#include "sp-flowtext.h"
namespace {
SPObject* createUse() {
@@ -177,8 +179,16 @@ Inkscape::XML::Node* SPUse::write(Inkscape::XML::Document *xml_doc, Inkscape::XM
g_free(uri_string);
}
- if (SP_IS_SHAPE(this->child))
+ if (SP_IS_SHAPE(this->child)) {
SP_SHAPE(this->child)->set_shape(); // evaluate SPCurve of child
+ } else if (SP_IS_TEXT(this->child)) {
+ SP_TEXT(this->child)->rebuildLayout(); // refresh Layout, LP Bug 1339305
+ } else if (SP_IS_FLOWTEXT(this->child)) {
+ if (SP_IS_FLOWREGION(SP_FLOWTEXT(this->child)->firstChild()))
+ SP_FLOWREGION(SP_FLOWTEXT(this->child)->firstChild())->UpdateComputed();
+ SP_FLOWTEXT(this->child)->rebuildLayout();
+ }
+
return repr;
}