tdf#117923: handle direct formatting for numbering in .doc
Since commit df07d6cb9f
, we do for DOCX.
DOC also has this problem, so set the relevant compatibility flag on
import for this format, too.
Change-Id: I3aef593341edffa878a06566da815cb72aa38004
Reviewed-on: https://gerrit.libreoffice.org/56812
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
This commit is contained in:
BIN
sw/qa/extras/layout/data/tdf117923.doc
Normal file
BIN
sw/qa/extras/layout/data/tdf117923.doc
Normal file
Binary file not shown.
@@ -24,6 +24,7 @@ public:
|
||||
void testTableExtrusion2();
|
||||
void testTdf116848();
|
||||
void testTdf117245();
|
||||
void testTdf117923();
|
||||
|
||||
CPPUNIT_TEST_SUITE(SwLayoutWriter);
|
||||
CPPUNIT_TEST(testTdf116830);
|
||||
@@ -34,6 +35,7 @@ public:
|
||||
CPPUNIT_TEST(testTableExtrusion2);
|
||||
CPPUNIT_TEST(testTdf116848);
|
||||
CPPUNIT_TEST(testTdf117245);
|
||||
CPPUNIT_TEST(testTdf117923);
|
||||
CPPUNIT_TEST_SUITE_END();
|
||||
|
||||
private:
|
||||
@@ -194,6 +196,19 @@ void SwLayoutWriter::testTdf117245()
|
||||
assertXPath(pXmlDoc, "/root/page/body/txt[2]/LineBreak", 1);
|
||||
}
|
||||
|
||||
void SwLayoutWriter::testTdf117923()
|
||||
{
|
||||
createDoc("tdf117923.doc");
|
||||
xmlDocPtr pXmlDoc = parseLayoutDump();
|
||||
|
||||
// Check that we actually test the line we need
|
||||
assertXPathContent(pXmlDoc, "/root/page/body/tab/row/cell/txt[3]", "GHI GHI GHI GHI");
|
||||
assertXPath(pXmlDoc, "/root/page/body/tab/row/cell/txt[3]/Special", "nType", "POR_NUMBER");
|
||||
assertXPath(pXmlDoc, "/root/page/body/tab/row/cell/txt[3]/Special", "rText", "2.");
|
||||
// The numbering height was 960.
|
||||
assertXPath(pXmlDoc, "/root/page/body/tab/row/cell/txt[3]/Special", "nHeight", "220");
|
||||
}
|
||||
|
||||
CPPUNIT_TEST_SUITE_REGISTRATION(SwLayoutWriter);
|
||||
CPPUNIT_PLUGIN_IMPLEMENT();
|
||||
|
||||
|
@@ -1795,6 +1795,9 @@ void SwWW8ImplReader::ImportDop()
|
||||
m_rDoc.getIDocumentSettingAccess().set(DocumentSettingId::TAB_COMPAT, true);
|
||||
// #i24363# tab stops relative to indent
|
||||
m_rDoc.getIDocumentSettingAccess().set(DocumentSettingId::TABS_RELATIVE_TO_INDENT, false);
|
||||
// tdf#117923
|
||||
m_rDoc.getIDocumentSettingAccess().set(
|
||||
DocumentSettingId::APPLY_PARAGRAPH_MARK_FORMAT_TO_NUMBERING, true);
|
||||
|
||||
// Import Default Tabs
|
||||
long nDefTabSiz = m_xWDop->dxaTab;
|
||||
|
@@ -88,7 +88,12 @@ OUString XmlTestTools::getXPathContent(xmlDocPtr pXmlDoc, const OString& rXPath)
|
||||
xmlXPathNodeSetGetLength(pXmlNodes) > 0);
|
||||
|
||||
xmlNodePtr pXmlNode = pXmlNodes->nodeTab[0];
|
||||
OUString s(convert((pXmlNode->children[0]).content));
|
||||
xmlNodePtr pXmlChild = pXmlNode->children;
|
||||
OUString s;
|
||||
while (pXmlChild && pXmlChild->type != XML_TEXT_NODE)
|
||||
pXmlChild = pXmlChild->next;
|
||||
if (pXmlChild && pXmlChild->type == XML_TEXT_NODE)
|
||||
s = convert(pXmlChild->content);
|
||||
xmlXPathFreeObject(pXmlObj);
|
||||
return s;
|
||||
}
|
||||
|
Reference in New Issue
Block a user