Kaydet (Commit) 3d2655ee authored tarafından Marco Cecchetti's avatar Marco Cecchetti

LOK - calc: now PgUp/PgDn offset is used only when PgUp/PgDn are pressed

Change-Id: I340d747021bc794361d6b8eff76335345b60010c
üst b5a15bc8
...@@ -415,6 +415,7 @@ public: ...@@ -415,6 +415,7 @@ public:
/// Force page size for PgUp/PgDown to overwrite the computation based on m_aVisArea. /// Force page size for PgUp/PgDown to overwrite the computation based on m_aVisArea.
void ForcePageUpDownOffset(long nTwips) { m_nLOKPageUpDownOffset = nTwips; } void ForcePageUpDownOffset(long nTwips) { m_nLOKPageUpDownOffset = nTwips; }
long GetPageUpDownOffset() { return m_nLOKPageUpDownOffset; }
void KillEditView(); void KillEditView();
void ResetEditView(); void ResetEditView();
......
...@@ -45,6 +45,7 @@ ...@@ -45,6 +45,7 @@
#include "tabprotection.hxx" #include "tabprotection.hxx"
#include "markdata.hxx" #include "markdata.hxx"
#include "inputopt.hxx" #include "inputopt.hxx"
#include <comphelper/lok.hxx>
namespace { namespace {
...@@ -628,6 +629,11 @@ void ScTabView::GetPageMoveEndPosition(SCsCOL nMovX, SCsROW nMovY, SCsCOL& rPage ...@@ -628,6 +629,11 @@ void ScTabView::GetPageMoveEndPosition(SCsCOL nMovX, SCsROW nMovY, SCsCOL& rPage
ScHSplitPos eWhichX = WhichH( eWhich ); ScHSplitPos eWhichX = WhichH( eWhich );
ScVSplitPos eWhichY = WhichV( eWhich ); ScVSplitPos eWhichY = WhichV( eWhich );
sal_uInt16 nScrSizeY = SC_SIZE_NONE;
if (comphelper::LibreOfficeKit::isActive() && aViewData.GetPageUpDownOffset() > 0) {
nScrSizeY = ScViewData::ToPixel( aViewData.GetPageUpDownOffset(), aViewData.GetPPTX() );
}
SCsCOL nPageX; SCsCOL nPageX;
SCsROW nPageY; SCsROW nPageY;
if (nMovX >= 0) if (nMovX >= 0)
...@@ -636,9 +642,9 @@ void ScTabView::GetPageMoveEndPosition(SCsCOL nMovX, SCsROW nMovY, SCsCOL& rPage ...@@ -636,9 +642,9 @@ void ScTabView::GetPageMoveEndPosition(SCsCOL nMovX, SCsROW nMovY, SCsCOL& rPage
nPageX = ((SCsCOL) aViewData.CellsAtX( nCurX, -1, eWhichX )) * nMovX; nPageX = ((SCsCOL) aViewData.CellsAtX( nCurX, -1, eWhichX )) * nMovX;
if (nMovY >= 0) if (nMovY >= 0)
nPageY = ((SCsROW) aViewData.CellsAtY( nCurY, 1, eWhichY )) * nMovY; nPageY = ((SCsROW) aViewData.CellsAtY( nCurY, 1, eWhichY, nScrSizeY )) * nMovY;
else else
nPageY = ((SCsROW) aViewData.CellsAtY( nCurY, -1, eWhichY )) * nMovY; nPageY = ((SCsROW) aViewData.CellsAtY( nCurY, -1, eWhichY, nScrSizeY )) * nMovY;
if (nMovX != 0 && nPageX == 0) nPageX = (nMovX>0) ? 1 : -1; if (nMovX != 0 && nPageX == 0) nPageX = (nMovX>0) ? 1 : -1;
if (nMovY != 0 && nPageY == 0) nPageY = (nMovY>0) ? 1 : -1; if (nMovY != 0 && nPageY == 0) nPageY = (nMovY>0) ? 1 : -1;
......
...@@ -1735,11 +1735,6 @@ SCROW ScViewData::CellsAtY( SCsROW nPosY, SCsROW nDir, ScVSplitPos eWhichY, sal_ ...@@ -1735,11 +1735,6 @@ SCROW ScViewData::CellsAtY( SCsROW nPosY, SCsROW nDir, ScVSplitPos eWhichY, sal_
if (nScrSizeY == SC_SIZE_NONE) nScrSizeY = (sal_uInt16) aScrSize.Height(); if (nScrSizeY == SC_SIZE_NONE) nScrSizeY = (sal_uInt16) aScrSize.Height();
if (comphelper::LibreOfficeKit::isActive() && m_nLOKPageUpDownOffset > 0)
{
nScrSizeY = ToPixel( m_nLOKPageUpDownOffset, nPPTY );
}
SCROW nY; SCROW nY;
if (nDir==1) if (nDir==1)
......
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