summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2014-04-12 16:15:28 +0200
committerMichael Stahl <mstahl@redhat.com>2014-04-15 19:46:48 +0000
commitc76886856411a074a63b273c1709fbeeb005711a (patch)
treeaa046ecc6d3a5eab7a163288ffed3f86ffb7ea6e
parent7b11605f36d8e5b9dda01fd577e095e4867f1ce5 (diff)
fdo#74599 RTF import: enable StylesNoDefault compat setting
The Writer 'Heading 3' paragraph style is gray by default, but (just like in case of DOCX) that shouldn't have any influence on the RTF import result. Fix this by moving the compat setting from the DOCX filter implementation to the common dmapper. Change-Id: I86c7cf1a66f82b438ce8379467773a88c9e229af (cherry picked from commit 2df53ef5002270bfe788e383e95002f636a242d9) Reviewed-on: https://gerrit.libreoffice.org/8945 Tested-by: Michael Stahl <mstahl@redhat.com> Reviewed-by: Michael Stahl <mstahl@redhat.com>
-rw-r--r--sw/qa/extras/rtfimport/data/fdo74599.rtf8
-rw-r--r--sw/qa/extras/rtfimport/rtfimport.cxx7
-rw-r--r--writerfilter/source/dmapper/DomainMapper.cxx3
-rw-r--r--writerfilter/source/filter/ImportFilter.cxx3
4 files changed, 18 insertions, 3 deletions
diff --git a/sw/qa/extras/rtfimport/data/fdo74599.rtf b/sw/qa/extras/rtfimport/data/fdo74599.rtf
new file mode 100644
index 000000000000..b47728fdd8c6
--- /dev/null
+++ b/sw/qa/extras/rtfimport/data/fdo74599.rtf
@@ -0,0 +1,8 @@
+{\rtf1
+{\stylesheet
+{\s3 heading 3;}
+}
+\pard\plain \s3
+This is gray
+\par
+}
diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx
index 796151947bae..5bcdcb47ee6a 100644
--- a/sw/qa/extras/rtfimport/rtfimport.cxx
+++ b/sw/qa/extras/rtfimport/rtfimport.cxx
@@ -1615,6 +1615,13 @@ DECLARE_RTFIMPORT_TEST(testFdo74823, "fdo74823.rtf")
CPPUNIT_ASSERT_EQUAL(sal_Int16(5391), getProperty< uno::Sequence<text::TableColumnSeparator> >(xTableRows->getByIndex(1), "TableColumnSeparators")[2].Position);
}
+DECLARE_RTFIMPORT_TEST(testFdo74599, "fdo74599.rtf")
+{
+ uno::Reference<beans::XPropertySet> xPropertySet(getStyles("ParagraphStyles")->getByName("Heading 3"), uno::UNO_QUERY);
+ // Writer default styles weren't disabled, so the color was gray, not default (black).
+ CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(-1), getProperty<sal_Int32>(xPropertySet, "CharColor"));
+}
+
CPPUNIT_PLUGIN_IMPLEMENT();
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx
index 2532942da386..dbb16d0b8427 100644
--- a/writerfilter/source/dmapper/DomainMapper.cxx
+++ b/writerfilter/source/dmapper/DomainMapper.cxx
@@ -107,6 +107,9 @@ LoggedStream(dmapper_logger, "DomainMapper"),
PropertyNameSupplier::GetPropertyNameSupplier().GetName( PROP_SURROUND_TEXT_WRAP_SMALL ),
uno::makeAny( true ) );
+ // Don't load the default style definitions to avoid weird mix
+ m_pImpl->SetDocumentSettingsProperty("StylesNoDefault", uno::makeAny(true));
+
//import document properties
try
{
diff --git a/writerfilter/source/filter/ImportFilter.cxx b/writerfilter/source/filter/ImportFilter.cxx
index cbbcd3a9b64c..0fa211c00bc9 100644
--- a/writerfilter/source/filter/ImportFilter.cxx
+++ b/writerfilter/source/filter/ImportFilter.cxx
@@ -284,9 +284,6 @@ void WriterFilter::setTargetDocument( const uno::Reference< lang::XComponent >&
xSettings->setPropertyValue( "TabOverflow", uno::makeAny( sal_True ) );
xSettings->setPropertyValue( "UnbreakableNumberings", uno::makeAny( sal_True ) );
- // Don't load the default style definitions to avoid weird mix
- xSettings->setPropertyValue( "StylesNoDefault", uno::makeAny( sal_True ) );
-
xSettings->setPropertyValue("FloattableNomargins", uno::makeAny( sal_True ));
xSettings->setPropertyValue( "ClippedPictures", uno::makeAny( sal_True ) );
xSettings->setPropertyValue( "BackgroundParaOverDrawings", uno::makeAny( sal_True ) );