[Libreoffice-commits] .: Branch 'libreoffice-3-5' - sw/source

Caolán McNamara caolan at kemper.freedesktop.org
Thu Mar 22 08:43:01 PDT 2012


 sw/source/core/text/txtfly.cxx |   11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

New commits:
commit 347bb1634b10eba577742fe8a7edb4b2dd69265d
Author: Cédric Bosdonnat <cedric.bosdonnat.ooo at free.fr>
Date:   Thu Mar 22 14:27:43 2012 +0100

    Revert "make text wrapping work in headers/footers too (fdo#39155)"
    
    This reverts commit e2a8fb0427e6b33a0fd3873bb7e077a6e5da8ebb. This is a
    feature, not a bug and would cause loads of documents to be badly
    rendered.
    
    Link to the spec that brough that feature:
        http://www.openoffice.org/specs/writer/compatibility/adjust-text-wrapping.sxw
    
    Conflicts:
    
    	sw/source/core/text/txtfly.cxx
    (cherry picked from commit 2a4e77a6f94d35919237b9db9de184e70943fc13)
    
    Conflicts:
    
    	sw/source/core/text/txtfly.cxx

diff --git a/sw/source/core/text/txtfly.cxx b/sw/source/core/text/txtfly.cxx
index 7a7ddf5..8eb06ca 100644
--- a/sw/source/core/text/txtfly.cxx
+++ b/sw/source/core/text/txtfly.cxx
@@ -1378,7 +1378,14 @@ SwAnchoredObjList* SwTxtFly::InitAnchoredObjList()
 
     const SwSortedObjs *pSorted = pPage->GetSortedObjs();
     const sal_uInt32 nCount = pSorted ? pSorted->Count() : 0;
-    const sal_Bool bWrapAllowed = !SwLayouter::FrmNotToWrap( *pCurrFrm->GetTxtNode()->getIDocumentLayoutAccess(), *pCurrFrm );
+    // --> #108724# Page header/footer content doesn't have to wrap around
+    //              floating screen objects
+    const bool bFooterHeader = 0 != pCurrFrm->FindFooterOrHeader();
+    const IDocumentSettingAccess* pIDSA = pCurrFrm->GetTxtNode()->getIDocumentSettingAccess();
+    // #i40155# - check, if frame is marked not to wrap
+    const sal_Bool bWrapAllowed = ( pIDSA->get(IDocumentSettingAccess::USE_FORMER_TEXT_WRAPPING) ||
+                                    ( !pCurrFrm->IsInFtn() && !bFooterHeader ) ) &&
+                                      !SwLayouter::FrmNotToWrap( *pCurrFrm->GetTxtNode()->getIDocumentLayoutAccess(), *pCurrFrm );
 
     bOn = sal_False;
 
@@ -1390,7 +1397,6 @@ SwAnchoredObjList* SwTxtFly::InitAnchoredObjList()
         // #i28701# - consider complete frame area for new
         // text wrapping
         SwRect aRect;
-        const IDocumentSettingAccess* pIDSA = pCurrFrm->GetTxtNode()->getIDocumentSettingAccess();
         if ( pIDSA->get(IDocumentSettingAccess::USE_FORMER_TEXT_WRAPPING) )
         {
             aRect = pCurrFrm->Prt();
@@ -1406,7 +1412,6 @@ SwAnchoredObjList* SwTxtFly::InitAnchoredObjList()
         const long nRight = (aRect.*fnRect->fnGetRight)() - 1;
         const long nLeft = (aRect.*fnRect->fnGetLeft)() + 1;
         const sal_Bool bR2L = pCurrFrm->IsRightToLeft();
-        const bool bFooterHeader = ( pCurrFrm->FindFooterOrHeader() != NULL );
 
         const IDocumentDrawModelAccess* pIDDMA = pCurrFrm->GetTxtNode()->getIDocumentDrawModelAccess();
 


More information about the Libreoffice-commits mailing list