summaryrefslogtreecommitdiff
path: root/sw/qa
diff options
context:
space:
mode:
authorJustin Luth <justin.luth@collabora.com>2020-08-13 12:02:39 +0300
committerJustin Luth <justin_luth@sil.org>2020-08-15 08:28:20 +0200
commit7cc353df4f0993228984fcda3efb2c9181dddafb (patch)
tree3396d00f9d9b4ac775417bf68f37d2666f38ff13 /sw/qa
parent4708fa80ac95f11bfbfd422bec52865a17b46fd9 (diff)
tdf#77794 writerfilter: compat15 - always bLayoutInCell
Based on observation (no documentation found), MS Word 2013 ignores the actual value of LayoutInCell and always considers it to be true. The UI shows it, but it is grayed out when CompatibilityMode == 15. The code's default value of bLayoutInCell is also true, so compatMode only needs to be checked if the property is actually set in the document. I probably could have left off the IsInTable() check, but decided to just be as safe as possible. I assume it doesn't apply, but LayoutInCell sets a IsFollowingTextFlow property - which might have meaning outside of a table in SW - I don't know. Change-Id: Ief073ea96c6c61efb3bcbbc11d114d739b04c3af Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100651 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org> Reviewed-by: Justin Luth <justin_luth@sil.org>
Diffstat (limited to 'sw/qa')
-rw-r--r--sw/qa/extras/ooxmlexport/data/tdf135595_HFtableWrap.odtbin0 -> 97647 bytes
-rw-r--r--sw/qa/extras/ooxmlexport/ooxmlexport14.cxx9
2 files changed, 9 insertions, 0 deletions
diff --git a/sw/qa/extras/ooxmlexport/data/tdf135595_HFtableWrap.odt b/sw/qa/extras/ooxmlexport/data/tdf135595_HFtableWrap.odt
new file mode 100644
index 000000000000..145a6af8da34
--- /dev/null
+++ b/sw/qa/extras/ooxmlexport/data/tdf135595_HFtableWrap.odt
Binary files differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport14.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport14.cxx
index 129b93882c68..3e415e25da18 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport14.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport14.cxx
@@ -102,6 +102,15 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf128197)
CPPUNIT_ASSERT_LESS(nHeight15, nHeight14);
}
+DECLARE_OOXMLEXPORT_TEST(testTdf135595_HFtableWrap, "tdf135595_HFtableWrap.odt")
+{
+ xmlDocUniquePtr pXmlDoc = parseLayoutDump();
+ sal_Int32 nRowHeight = getXPath(pXmlDoc, "//page[1]/header/tab/row/infos/bounds", "height").toInt32();
+ // tdf#77794: always force bLayoutInCell from false to true for MSO2013+
+ // The fly is supposed to be inside the cell. Before, height was 998. Now it is 2839.
+ CPPUNIT_ASSERT_MESSAGE("Image must be contained inside the table cell", nRowHeight > 2000);
+}
+
DECLARE_OOXMLIMPORT_TEST(testTdf123622, "tdf123622.docx")
{
uno::Reference<beans::XPropertySet> XPropsRight(getShape(1),uno::UNO_QUERY);