diff options
-rw-r--r-- | sw/qa/extras/ooxmlimport/ooxmlimport.cxx | 4 | ||||
-rw-r--r-- | sw/source/uibase/wrtsh/wrtsh1.cxx | 11 |
2 files changed, 15 insertions, 0 deletions
diff --git a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx index a24c3ab51aa7..fe9c686e50bd 100644 --- a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx +++ b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx @@ -2118,6 +2118,10 @@ DECLARE_OOXMLIMPORT_TEST(testChartSize, "chart-size.docx") uno::Reference<container::XIndexAccess> xEmbeddedObjects(xTextEmbeddedObjectsSupplier->getEmbeddedObjects(), uno::UNO_QUERY); // This was 10954. CPPUNIT_ASSERT_EQUAL(sal_Int32(6008), getProperty<sal_Int32>(xEmbeddedObjects->getByIndex(0), "Width")); + + // Layout modified the document when it had this chart. + uno::Reference<util::XModifiable> xModifiable(mxComponent, uno::UNO_QUERY); + CPPUNIT_ASSERT_EQUAL(false, bool(xModifiable->isModified())); } DECLARE_OOXMLIMPORT_TEST(testInlineGroupshape, "inline-groupshape.docx") diff --git a/sw/source/uibase/wrtsh/wrtsh1.cxx b/sw/source/uibase/wrtsh/wrtsh1.cxx index dbd8c055eec9..6c03ee9c7a3e 100644 --- a/sw/source/uibase/wrtsh/wrtsh1.cxx +++ b/sw/source/uibase/wrtsh/wrtsh1.cxx @@ -650,7 +650,18 @@ void SwWrtShell::CalcAndSetScale( svt::EmbeddedObjectRef& xObj, awt::Size aSz; aSz.Width = aSize.Width(); aSz.Height = aSize.Height(); + + // Action 'setVisualAreaSize' doesn't have to change the + // modified state of the document, either. + bool bModified = false; + uno::Reference<util::XModifiable> xModifiable(xObj->getComponent(), uno::UNO_QUERY); + if (xModifiable.is()) + bModified = xModifiable->isModified(); xObj->setVisualAreaSize( nAspect, aSz ); + xModifiable.set(xObj->getComponent(), uno::UNO_QUERY); + if (xModifiable.is()) + xModifiable->setModified(bModified); + // #i48419# - action 'UpdateReplacement' doesn't // have to change the modified state of the document. // This is only a workaround for the defect, that this action |