sw/source/core/text/itrcrsr.cxx | 3 ++- sw/source/core/text/itrpaint.cxx | 3 ++- sw/source/core/text/porlay.hxx | 1 + 3 files changed, 5 insertions(+), 2 deletions(-)
New commits: commit 542421402d4e4f32bd9c499673d7a3fa98b00683 Author: Mark Hung <mark...@gmail.com> Date: Thu Feb 2 21:15:01 2017 +0800 tdf#104270 count hanging margin only if there is hanging portion. GetHangingMargin() also returns offset for PostItPortion, assure there is a hanging portion before using the value. Change-Id: I750b8078fbd607d49f4bf5f76ea606fc36ea5c23 Reviewed-on: https://gerrit.libreoffice.org/33832 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Michael Stahl <mst...@redhat.com> diff --git a/sw/source/core/text/itrcrsr.cxx b/sw/source/core/text/itrcrsr.cxx index 293cdfd..50976db 100644 --- a/sw/source/core/text/itrcrsr.cxx +++ b/sw/source/core/text/itrcrsr.cxx @@ -1260,7 +1260,8 @@ sal_Int32 SwTextCursor::GetCursorOfst( SwPosition *pPos, const Point &rPoint, // x is the horizontal offset within the line. SwTwips x = rPoint.X(); const SwTwips nLeftMargin = GetLineStart(); - SwTwips nRightMargin = GetLineEnd() + GetCurr()->GetHangingMargin(); + SwTwips nRightMargin = GetLineEnd() + + ( GetCurr()->IsHanging() ? GetCurr()->GetHangingMargin() : 0 ); if( nRightMargin == nLeftMargin ) nRightMargin += 30; diff --git a/sw/source/core/text/itrpaint.cxx b/sw/source/core/text/itrpaint.cxx index 76987a3..3236982 100644 --- a/sw/source/core/text/itrpaint.cxx +++ b/sw/source/core/text/itrpaint.cxx @@ -443,7 +443,8 @@ void SwTextPainter::DrawTextLine( const SwRect &rPaint, SwSaveClip &rClip, if ( bAdjustBaseLine ) GetInfo().Y( GetInfo().GetPos().Y() + AdjustBaseLine( *m_pCurr, &aEnd ) ); - GetInfo().X( GetInfo().X() + GetCurr()->GetHangingMargin() ); + GetInfo().X( GetInfo().X() + + ( GetCurr()->IsHanging() ? GetCurr()->GetHangingMargin() : 0 ) ); aEnd.Paint( GetInfo() ); GetInfo().Y( nOldY ); } diff --git a/sw/source/core/text/porlay.hxx b/sw/source/core/text/porlay.hxx index f5c9052..eb7c2bd 100644 --- a/sw/source/core/text/porlay.hxx +++ b/sw/source/core/text/porlay.hxx @@ -126,6 +126,7 @@ public: inline void SetForcedLeftMargin() { m_bForcedLeftMargin = true; } inline bool HasForcedLeftMargin() const { return m_bForcedLeftMargin; } inline void SetHanging( const bool bNew = true ) { m_bHanging = bNew; } + inline bool IsHanging() const { return m_bHanging; } inline void SetUnderscore( const bool bNew = true ) { m_bUnderscore = bNew; } inline bool HasUnderscore() const { return m_bUnderscore; } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits