summaryrefslogtreecommitdiffstats
path: root/sw/source/core/text/itrform2.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sw/source/core/text/itrform2.cxx')
-rw-r--r--sw/source/core/text/itrform2.cxx13
1 files changed, 10 insertions, 3 deletions
diff --git a/sw/source/core/text/itrform2.cxx b/sw/source/core/text/itrform2.cxx
index 6623000c33..dad32bf4fc 100644
--- a/sw/source/core/text/itrform2.cxx
+++ b/sw/source/core/text/itrform2.cxx
@@ -852,6 +852,7 @@ void SwTextFormatter::CalcAscent( SwTextFormatInfo &rInf, SwLinePortion *pPor )
// In empty lines the attributes are switched on via SeekStart
const bool bFirstPor = rInf.GetLineStart() == rInf.GetIdx();
+
if ( pPor->IsQuoVadisPortion() )
bChg = SeekStartAndChg( rInf, true );
else
@@ -860,10 +861,16 @@ void SwTextFormatter::CalcAscent( SwTextFormatInfo &rInf, SwLinePortion *pPor )
{
if( !rInf.GetText().isEmpty() )
{
- if ( pPor->GetLen() || !rInf.GetIdx()
- || ( m_pCurr != pLast && !pLast->IsFlyPortion() )
- || !m_pCurr->IsRest() ) // instead of !rInf.GetRest()
+ if ((rInf.GetIdx() != TextFrameIndex(rInf.GetText().getLength())
+ || rInf.GetRest() // field continued - not empty
+ || !GetTextFrame()->GetDoc().getIDocumentSettingAccess().get(
+ DocumentSettingId::APPLY_TEXT_ATTR_TO_EMPTY_LINE_AT_END_OF_PARAGRAPH))
+ && (pPor->GetLen() || !rInf.GetIdx()
+ || (m_pCurr != pLast && !pLast->IsFlyPortion())
+ || !m_pCurr->IsRest())) // instead of !rInf.GetRest()
+ {
bChg = SeekAndChg( rInf );
+ }
else
bChg = SeekAndChgBefore( rInf );
}