From 6a1f0ec26cf5ff2cbd83a074774d324c9f751217 Mon Sep 17 00:00:00 2001 From: Marco Cecchetti Date: Thu, 17 Nov 2016 12:42:34 +0100 Subject: LOK - calc: now PgUp/PgDn offset is used only when PgUp/PgDn are pressed Change-Id: I340d747021bc794361d6b8eff76335345b60010c Reviewed-on: https://gerrit.libreoffice.org/30975 Reviewed-by: Marco Cecchetti Tested-by: Marco Cecchetti --- sc/source/ui/inc/viewdata.hxx | 1 + sc/source/ui/view/tabview2.cxx | 10 ++++++++-- sc/source/ui/view/viewdata.cxx | 5 ----- 3 files changed, 9 insertions(+), 7 deletions(-) (limited to 'sc/source/ui') diff --git a/sc/source/ui/inc/viewdata.hxx b/sc/source/ui/inc/viewdata.hxx index 9323dad65133..1a62a909d10c 100644 --- a/sc/source/ui/inc/viewdata.hxx +++ b/sc/source/ui/inc/viewdata.hxx @@ -434,6 +434,7 @@ public: /// Force page size for PgUp/PgDown to overwrite the computation based on m_aVisArea. void ForcePageUpDownOffset(long nTwips) { m_nLOKPageUpDownOffset = nTwips; } + long GetPageUpDownOffset() { return m_nLOKPageUpDownOffset; } void KillEditView(); void ResetEditView(); diff --git a/sc/source/ui/view/tabview2.cxx b/sc/source/ui/view/tabview2.cxx index 275002ca920e..16ad08089402 100644 --- a/sc/source/ui/view/tabview2.cxx +++ b/sc/source/ui/view/tabview2.cxx @@ -45,6 +45,7 @@ #include "tabprotection.hxx" #include "markdata.hxx" #include "inputopt.hxx" +#include namespace { @@ -628,6 +629,11 @@ void ScTabView::GetPageMoveEndPosition(SCsCOL nMovX, SCsROW nMovY, SCsCOL& rPage ScHSplitPos eWhichX = WhichH( 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; SCsROW nPageY; if (nMovX >= 0) @@ -636,9 +642,9 @@ void ScTabView::GetPageMoveEndPosition(SCsCOL nMovX, SCsROW nMovY, SCsCOL& rPage nPageX = ((SCsCOL) aViewData.CellsAtX( nCurX, -1, eWhichX )) * nMovX; if (nMovY >= 0) - nPageY = ((SCsROW) aViewData.CellsAtY( nCurY, 1, eWhichY )) * nMovY; + nPageY = ((SCsROW) aViewData.CellsAtY( nCurY, 1, eWhichY, nScrSizeY )) * nMovY; 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 (nMovY != 0 && nPageY == 0) nPageY = (nMovY>0) ? 1 : -1; diff --git a/sc/source/ui/view/viewdata.cxx b/sc/source/ui/view/viewdata.cxx index b37af9289cef..c6111917c6ec 100644 --- a/sc/source/ui/view/viewdata.cxx +++ b/sc/source/ui/view/viewdata.cxx @@ -1763,11 +1763,6 @@ SCROW ScViewData::CellsAtY( SCsROW nPosY, SCsROW nDir, ScVSplitPos eWhichY, sal_ if (nScrSizeY == SC_SIZE_NONE) nScrSizeY = (sal_uInt16) aScrSize.Height(); - if (comphelper::LibreOfficeKit::isActive() && m_nLOKPageUpDownOffset > 0) - { - nScrSizeY = ToPixel( m_nLOKPageUpDownOffset, nPPTY ); - } - SCROW nY; if (nDir==1) -- cgit tro/collabora/cp-4.3 LibreOffice 核心代码仓库文档基金会
summaryrefslogtreecommitdiff