summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorParis Oplopoios <paris.oplopoios@collabora.com>2023-07-18 01:58:14 +0300
committerParis Oplopoios <parisoplop@gmail.com>2023-07-18 17:54:37 +0200
commitdf00cd5cf77eb2322f53b80296862940ba815d9a (patch)
tree32c6b8863dc24cc1f9a920c390c8cb7a979a6094 /sw
parent63a9b0bed08a68f3619cadf7b7cef0a087154c10 (diff)
Revert "ww8import create a pagedesc if continuous section changes margins"
This reverts commit c5ed52b1cd6f22787c94bec035ceecf9e1da3271. The reverted commit would insert a pagebreak on section breaks if the margin before and after the section break was different. While this means a table after the section break will get the correct margin, it would also create a page which is very breaking - it shouldn't be the case in documents that have multiple continuous section breaks in a single page that a new page is created for each of those breaks if the margins are different - there are documents where this happens and in those documents a single page gets converted to multiple messy pages. Thus the table margins being correct after a section break with a margin change should be fixed in a different way. Change-Id: Ia5d5b98ddbd021803a6a9f80762b97db5808509f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154565 Tested-by: Jenkins Tested-by: Paris Oplopoios <parisoplop@gmail.com> Reviewed-by: Paris Oplopoios <parisoplop@gmail.com>
Diffstat (limited to 'sw')
-rw-r--r--sw/qa/extras/ww8import/data/floating-table-section-margins.docbin38400 -> 0 bytes
-rw-r--r--sw/qa/extras/ww8import/ww8import.cxx23
-rw-r--r--sw/source/filter/ww8/ww8par.cxx3
3 files changed, 0 insertions, 26 deletions
diff --git a/sw/qa/extras/ww8import/data/floating-table-section-margins.doc b/sw/qa/extras/ww8import/data/floating-table-section-margins.doc
deleted file mode 100644
index f414be7f1ec8..000000000000
--- a/sw/qa/extras/ww8import/data/floating-table-section-margins.doc
+++ /dev/null
Binary files differ
diff --git a/sw/qa/extras/ww8import/ww8import.cxx b/sw/qa/extras/ww8import/ww8import.cxx
index 82b4c74253dd..47a9e41f5352 100644
--- a/sw/qa/extras/ww8import/ww8import.cxx
+++ b/sw/qa/extras/ww8import/ww8import.cxx
@@ -37,29 +37,6 @@ public:
}
};
-CPPUNIT_TEST_FIXTURE(Test, testFloatingTableSectionMargins)
-{
- createSwDoc("floating-table-section-margins.doc");
- sal_Int32 pageLeft = parseDump("/root/page[2]/infos/bounds", "left").toInt32();
- sal_Int32 pageWidth = parseDump("/root/page[2]/infos/bounds", "width").toInt32();
- sal_Int32 tableLeft = parseDump("//tab/infos/bounds", "left").toInt32();
- sal_Int32 tableWidth = parseDump("//tab/infos/bounds", "width").toInt32();
- CPPUNIT_ASSERT( pageWidth > 0 );
- CPPUNIT_ASSERT( tableWidth > 0 );
- // The table's resulting position should be roughly centered.
- CPPUNIT_ASSERT( abs(( pageLeft + pageWidth / 2 ) - ( tableLeft + tableWidth / 2 )) < 20 );
-
- uno::Reference<beans::XPropertySet> xTextSection = getProperty< uno::Reference<beans::XPropertySet> >(getParagraph(2), "TextSection");
- CPPUNIT_ASSERT(xTextSection.is());
- uno::Reference<text::XTextColumns> xTextColumns = getProperty< uno::Reference<text::XTextColumns> >(xTextSection, "TextColumns");
- OUString pageStyleName = getProperty<OUString>(getParagraph(2), "PageStyleName");
- uno::Reference<beans::XPropertySet> xPageStyle(getStyles("PageStyles")->getByName(pageStyleName), uno::UNO_QUERY);
- uno::Reference<text::XTextColumns> xPageColumns = getProperty< uno::Reference<text::XTextColumns> >(xPageStyle, "TextColumns");
-
- //either one or the other should get the column's, not both.
- CPPUNIT_ASSERT( xTextColumns->getColumnCount() != xPageColumns->getColumnCount());
-}
-
CPPUNIT_TEST_FIXTURE(Test, testN816593)
{
createSwDoc("n816593.doc");
diff --git a/sw/source/filter/ww8/ww8par.cxx b/sw/source/filter/ww8/ww8par.cxx
index abd7cf4c0345..04c00b90b78e 100644
--- a/sw/source/filter/ww8/ww8par.cxx
+++ b/sw/source/filter/ww8/ww8par.cxx
@@ -4527,9 +4527,6 @@ void wwSectionManager::InsertSegments()
bool bInsertSection = (aIter != aStart) && aIter->IsContinuous() && bThisAndPreviousAreCompatible;
bool bInsertPageDesc = !bInsertSection;
- // HACK Force new pagedesc if left/right margins change, otherwise e.g. floating tables may be anchored improperly.
- if( aIter->maSep.dxaLeft != aPrev->maSep.dxaLeft || aIter->maSep.dxaRight != aPrev->maSep.dxaRight )
- bInsertPageDesc = true;
bool bProtected = SectionIsProtected(*aIter); // do we really need this ?? I guess I have a different logic in editshell which disables this...
if (bInsertPageDesc)