sw/source/core/layout/frmtool.cxx | 7 +++++++ 1 file changed, 7 insertions(+)
New commits: commit 96f7681117e12974964f60e272241bef236c0147 Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Wed Aug 23 15:49:44 2023 +0200 Commit: Miklos Vajna <vmik...@collabora.com> CommitDate: Wed Dec 6 15:41:21 2023 +0100 tdf#137523 sw: layout: fix text below tables in footer differently This fix is better than commit 027f8328eef1e149b6c99b478ed5df870291dc2d because it turns out the last text frame had a height of 219 in 6.1. One of the following commits would break this, so a different fix is needed. In SwFrameNotify::ImplDestroy(), if the frame changes its position the next frame's position is invalidated; if the next frame is undersized then also invalidate its size so that it will be formatted again, with more space. (cherry picked from commit 492ddef596c99a9c24d2778276025aafc612a7cb) Conflicts: sw/qa/extras/layout/layout3.cxx Change-Id: I8e6a3fe3127ebfa2246c440d2a3455b217476475 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160386 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com> Reviewed-by: Miklos Vajna <vmik...@collabora.com> diff --git a/sw/source/core/layout/frmtool.cxx b/sw/source/core/layout/frmtool.cxx index 4fc6286d32e4..7059b8472be8 100644 --- a/sw/source/core/layout/frmtool.cxx +++ b/sw/source/core/layout/frmtool.cxx @@ -202,7 +202,14 @@ void SwFrameNotify::ImplDestroy() } if ( pNxt ) + { pNxt->InvalidatePos(); + if (pNxt->IsTextFrame() && static_cast<SwTextFrame*>(pNxt)->IsUndersized()) + { // tdf#137523 it could have more space at new pos + pNxt->InvalidateSize(); + pNxt->Prepare(PrepareHint::AdjustSizeWithoutFormatting); + } + } else { // #104100# - correct condition for setting retouche