diff options
author | Cédric Bosdonnat <cedric.bosdonnat@free.fr> | 2012-01-04 21:54:05 +0100 |
---|---|---|
committer | Cédric Bosdonnat <cedric.bosdonnat@free.fr> | 2012-01-04 21:54:32 +0100 |
commit | a0fa723ed5761609d2c31061fdd0282a2f1df6e7 (patch) | |
tree | 6e2c18144b8e0b2c6f630d05f628eae478cc5292 /sw | |
parent | f923d1889fee6e5c6a4189611c33b5f8367472ce (diff) |
Page Break: fixed position of tab in RTL and added dirty hack for freezes
Diffstat (limited to 'sw')
-rw-r--r-- | sw/source/ui/docvw/PageBreakWin.cxx | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/sw/source/ui/docvw/PageBreakWin.cxx b/sw/source/ui/docvw/PageBreakWin.cxx index aa1085cb28a9..b16e51f08652 100644 --- a/sw/source/ui/docvw/PageBreakWin.cxx +++ b/sw/source/ui/docvw/PageBreakWin.cxx @@ -142,8 +142,11 @@ namespace m_pWin->Fade( true ); } - Point* pPtr = new Point( rMEvt.GetPosPixel() ); - m_pWin->UpdatePosition( pPtr ); + if ( !rMEvt.IsSynthetic() ) + { + Point* pPtr = new Point( rMEvt.GetPosPixel() ); + m_pWin->UpdatePosition( pPtr ); + } } void SwBreakDashedLine::MouseButtonDown( const MouseEvent& rMEvt ) @@ -450,7 +453,14 @@ void SwPageBreakWin::UpdatePosition( const Point* pEvtPt ) if ( m_pMousePt ) { nBtnLeft = nLineLeft + m_pMousePt->X(); - if ( ( nBtnLeft + aBtnSize.getWidth() ) > nLineRight ) + + if ( Application::GetSettings().GetLayoutRTL() ) + { + nBtnLeft -= aBtnSize.getWidth(); + if ( nBtnLeft < nLineLeft ) + nBtnLeft = nLineLeft; + } + else if ( ( nBtnLeft + aBtnSize.getWidth() ) > nLineRight ) nBtnLeft = nLineRight - aBtnSize.getWidth(); } |