diff options
-rw-r--r-- | sw/source/core/layout/findfrm.cxx | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sw/source/core/layout/findfrm.cxx b/sw/source/core/layout/findfrm.cxx index 4a3d3722edd8..b4e61b7a19f4 100644 --- a/sw/source/core/layout/findfrm.cxx +++ b/sw/source/core/layout/findfrm.cxx @@ -1263,8 +1263,12 @@ static bool lcl_IsInSectionDirectly( const SwFrame *pUp ) if( pUp->IsColumnFrame() ) bSeenColumn = true; else if( pUp->IsSctFrame() ) + { + auto pSection = static_cast<const SwSectionFrame*>(pUp); // Allow move of frame in case our only column is not growable. - return bSeenColumn || !static_cast<const SwSectionFrame*>(pUp)->Growable(); + // Also allow if there is a previous section frame (to move back). + return bSeenColumn || !pSection->Growable() || pSection->GetPrecede(); + } else if( pUp->IsTabFrame() ) return false; pUp = pUp->GetUpper(); |