[Libreoffice-commits] core.git: sw/qa writerfilter/source
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Mon Jul 30 06:01:03 UTC 2018
sw/qa/extras/ooxmlexport/data/calendar3.docx |binary
sw/qa/extras/ooxmlexport/ooxmlexport3.cxx | 9 +++++++++
writerfilter/source/dmapper/DomainMapper_Impl.cxx | 7 +++++++
3 files changed, 16 insertions(+)
New commits:
commit 3f1eaebcbb39aeff0558218f0ce77f7e91424fa2
Author: Justin Luth <justin.luth at collabora.com>
AuthorDate: Sat Jul 28 19:36:40 2018 +0300
Commit: Justin Luth <justin_luth at sil.org>
CommitDate: Mon Jul 30 08:00:40 2018 +0200
related tdf#72560 writerfilter: also check rPrDefaults
So far I've been fixated on paragraph properties, but styles
(both character and paragraph) also inherit the rPrDefaults.
One enhancement could be to check the styleType and skip
the paragraph stuff for character styles, but that doesn't
seem necessary or valuable at this point.
The unit test is pre-emptive.
Change-Id: I4e898f5fa573b62be4dc70512b02cdeb7b21e7c6
Reviewed-on: https://gerrit.libreoffice.org/58257
Reviewed-by: Justin Luth <justin_luth at sil.org>
Tested-by: Justin Luth <justin_luth at sil.org>
diff --git a/sw/qa/extras/ooxmlexport/data/calendar3.docx b/sw/qa/extras/ooxmlexport/data/calendar3.docx
new file mode 100644
index 000000000000..6c720aff9ce1
Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/calendar3.docx differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport3.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport3.cxx
index 954528239dd3..b83bab3e136d 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport3.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport3.cxx
@@ -339,6 +339,15 @@ DECLARE_OOXMLEXPORT_TEST(testCalendar2, "calendar2.docx")
assertXPath(pXmlStyles, "/w:styles/w:style[@w:styleId='Calendar2']/w:tblPr/w:tblBorders/w:insideV", "themeTint", "99");
}
+DECLARE_OOXMLEXPORT_TEST(testCalendar3, "calendar3.docx")
+{
+ // TableStyle:firstRow (for header rows 1 and 2) color and size overrides document rPrDefault
+ uno::Reference<text::XTextTable> xTable(getParagraphOrTable(1), uno::UNO_QUERY);
+ uno::Reference<text::XTextRange> xCell(xTable->getCellByName("A2"), uno::UNO_QUERY);
+ CPPUNIT_ASSERT_EQUAL(0x5B9BD5, getProperty<sal_Int32>(getRun(xCell,1), "CharColor"));
+ CPPUNIT_ASSERT_EQUAL(16.f, getProperty<float>(getRun(xCell,1), "CharHeight"));
+}
+
DECLARE_OOXMLEXPORT_TEST(testTcBorders, "testTcBorders.docx")
{
//fdo#76635 : Table borders are not getting preserved.
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
index 469d8d0ce1fd..3a71b395acb7 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
@@ -731,6 +731,13 @@ uno::Any DomainMapper_Impl::GetPropertyFromStyleSheet(PropertyIds eId)
if ( aProperty )
return aProperty->second;
}
+ const PropertyMapPtr& pDefaultCharProps = GetStyleSheetTable()->GetDefaultCharProps();
+ if ( pDefaultCharProps )
+ {
+ boost::optional<PropertyMap::Property> aProperty = pDefaultCharProps->getProperty(eId);
+ if ( aProperty )
+ return aProperty->second;
+ }
}
return uno::Any();
}
More information about the Libreoffice-commits
mailing list