tdf#104596 sw layout: wrap in header only if bLayoutInCell
commit57320af60d97f2918b5d1e73575b23682e0a0637
authorJustin Luth <justin.luth@collabora.com>
Thu, 13 Aug 2020 16:05:35 +0000 (13 19:05 +0300)
committerMiklos Vajna <vmiklos@collabora.com>
Mon, 31 Aug 2020 14:00:46 +0000 (31 16:00 +0200)
treea1e19e40aee1c02e1821789a20eb6b3f696521c4
parent6b08eaa0c483efe5071c5a710a894e1204a0a3f4
tdf#104596 sw layout: wrap in header only if bLayoutInCell

This patch depends on tdf#77794's
7.1 commit 7cc353df4f0993228984fcda3efb2c9181dddafb.

For more details about the issue in general,
see the verbose comments in this bug's previous
7.1 commit e4635544b816d1ca27bd1ebba60f51444b0a898e.

This patch is related to CompatibilityMode < 15.
Unfortunately, the previous patch didn't work
with older Word 2010 versions of the file,
which _shouldn't_ wrap non-LayoutInCell table-anchored flies.

Unfortunately, now that different behaviour is necessary
for different Word compat levels,
it no longer allows a nice way for Writer to handle
this natively. So since it would be very unlikely for a
user to create a document like this (since the necessary
"keep inside text boundaries" is off by default in Writer,
but is forced on by definition in Word 2013+),
I'm removing the compatibility flag I added in 7.1,
and its related unit test.

[To do this natively would probably require enabling
the IsFollowingTextFlow property by default in SW.
That sounds very dangerous since this property
is not restricted to IsInTable layout situations.
This property has been around since at least LO 3.5.]

Change-Id: I70da016cb68f515924ed6c17085bf73a9e1c5492
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100684
Tested-by: Jenkins
Reviewed-by: Justin Luth <justin_luth@sil.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
sw/inc/IDocumentSettingAccess.hxx
sw/qa/extras/odfexport/data/tdf104596_breakingExample.odt [deleted file]
sw/qa/extras/odfexport/odfexport.cxx
sw/qa/extras/ooxmlexport/data/tdf135595_HFtableWrap_c12.docx [new file with mode: 0644]
sw/qa/extras/ooxmlexport/ooxmlexport14.cxx
sw/source/core/doc/DocumentSettingManager.cxx
sw/source/core/inc/DocumentSettingManager.hxx
sw/source/core/text/txtfly.cxx
sw/source/filter/xml/xmlimp.cxx
sw/source/uibase/uno/SwXDocumentSettings.cxx