Kaydet (Commit) f49db879 authored tarafından Issa Alkurtass's avatar Issa Alkurtass Kaydeden (comit) Caolán McNamara

fdo#43210 Corrected page preview direction for RTL interface

Change-Id: I412510bc17a29873310689e3141c75d32b261e37
Reviewed-on: https://gerrit.libreoffice.org/557Reviewed-by: 's avatarCaolán McNamara <caolanm@redhat.com>
Tested-by: 's avatarCaolán McNamara <caolanm@redhat.com>
üst 6d0906c7
...@@ -26,6 +26,8 @@ ...@@ -26,6 +26,8 @@
* *
************************************************************************/ ************************************************************************/
#include "vcl/svapp.hxx"
#include <pagepreviewlayout.hxx> #include <pagepreviewlayout.hxx>
#include <prevwpage.hxx> #include <prevwpage.hxx>
...@@ -586,10 +588,19 @@ void SwPagePreviewLayout::_CalcPreviewPages() ...@@ -586,10 +588,19 @@ void SwPagePreviewLayout::_CalcPreviewPages()
// calculate initial paint offset // calculate initial paint offset
Point aInitialPaintOffset; Point aInitialPaintOffset;
if ( maPaintStartPageOffset != Point( -1, -1 ) ) /// check whether RTL interface or not
aInitialPaintOffset = Point(0,0) - maPaintStartPageOffset; if(!Application::GetSettings().GetLayoutRTL()){
else if ( maPaintStartPageOffset != Point( -1, -1 ) )
aInitialPaintOffset = Point( mnXFree, mnYFree ); aInitialPaintOffset = Point(0,0) - maPaintStartPageOffset;
else
aInitialPaintOffset = Point( mnXFree, mnYFree );
}
else {
if ( maPaintStartPageOffset != Point( -1, -1 ) )
aInitialPaintOffset = Point(0 + ((SwPagePreviewLayout::mnCols-1)*mnColWidth),0) - maPaintStartPageOffset;
else
aInitialPaintOffset = Point( mnXFree + ((SwPagePreviewLayout::mnCols-1)*mnColWidth), mnYFree );
}
aInitialPaintOffset += maAdditionalPaintOffset; aInitialPaintOffset += maAdditionalPaintOffset;
// prepare loop data // prepare loop data
...@@ -635,7 +646,10 @@ void SwPagePreviewLayout::_CalcPreviewPages() ...@@ -635,7 +646,10 @@ void SwPagePreviewLayout::_CalcPreviewPages()
{ {
// first page in 2nd column // first page in 2nd column
// --> continue with increased paint offset and next column // --> continue with increased paint offset and next column
aCurrPaintOffset.X() += mnColWidth; /// check whether RTL interface or not
if(!Application::GetSettings().GetLayoutRTL())
aCurrPaintOffset.X() += mnColWidth;
else aCurrPaintOffset.X() -= mnColWidth;
++nCurrCol; ++nCurrCol;
continue; continue;
} }
...@@ -658,7 +672,10 @@ void SwPagePreviewLayout::_CalcPreviewPages() ...@@ -658,7 +672,10 @@ void SwPagePreviewLayout::_CalcPreviewPages()
// prepare data for next loop // prepare data for next loop
pPage = static_cast<const SwPageFrm*>(pPage->GetNext()); pPage = static_cast<const SwPageFrm*>(pPage->GetNext());
aCurrPaintOffset.X() += mnColWidth; /// check whether RTL interface or not
if(!Application::GetSettings().GetLayoutRTL())
aCurrPaintOffset.X() += mnColWidth;
else aCurrPaintOffset.X() -= mnColWidth;
++nCurrCol; ++nCurrCol;
if ( nCurrCol > mnCols ) if ( nCurrCol > mnCols )
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment