Kaydet (Commit) 0ef7bc8a authored tarafından Henry Castro's avatar Henry Castro

sc lok: avoid save incorrect data, whether the pane has ...

horizontal / vertical splits

In the tiled rendering case the horizontal / vertical splits were
not implemented, so the leftmost visible column is 0.
So preserve horizontal / vertical splits when saving the document

Change-Id: I15b6f009910e51fdaf475de5aac1ebded16c1956
Reviewed-on: https://gerrit.libreoffice.org/69926
Tested-by: Jenkins
Reviewed-by: 's avatarHenry Castro <hcastro@collabora.com>
üst 186a9aae
...@@ -393,8 +393,8 @@ public: ...@@ -393,8 +393,8 @@ public:
SCTAB GetTabNo() const { return nTabNo; } SCTAB GetTabNo() const { return nTabNo; }
ScSplitPos GetActivePart() const { return pThisTab->eWhichActive; } ScSplitPos GetActivePart() const { return pThisTab->eWhichActive; }
SCCOL GetPosX( ScHSplitPos eWhich ) const { return pThisTab->nPosX[eWhich]; } SCCOL GetPosX( ScHSplitPos eWhich ) const;
SCROW GetPosY( ScVSplitPos eWhich ) const { return pThisTab->nPosY[eWhich]; } SCROW GetPosY( ScVSplitPos eWhich ) const;
SCCOL GetCurX() const { return pThisTab->nCurX; } SCCOL GetCurX() const { return pThisTab->nCurX; }
SCROW GetCurY() const { return pThisTab->nCurY; } SCROW GetCurY() const { return pThisTab->nCurY; }
SCCOL GetCurXForTab( SCTAB nTabIndex ) const; SCCOL GetCurXForTab( SCTAB nTabIndex ) const;
......
...@@ -566,7 +566,6 @@ void ScViewDataTable::ReadUserDataSequence(const uno::Sequence <beans::PropertyV ...@@ -566,7 +566,6 @@ void ScViewDataTable::ReadUserDataSequence(const uno::Sequence <beans::PropertyV
sal_Int32 nTempPosHTw(0); sal_Int32 nTempPosHTw(0);
bool bHasVSplitInTwips = false; bool bHasVSplitInTwips = false;
bool bHasHSplitInTwips = false; bool bHasHSplitInTwips = false;
bool bIsTiledRendering = comphelper::LibreOfficeKit::isActive();
for (sal_Int32 i = 0; i < nCount; i++) for (sal_Int32 i = 0; i < nCount; i++)
{ {
OUString sName(aSettings[i].Name); OUString sName(aSettings[i].Name);
...@@ -618,26 +617,22 @@ void ScViewDataTable::ReadUserDataSequence(const uno::Sequence <beans::PropertyV ...@@ -618,26 +617,22 @@ void ScViewDataTable::ReadUserDataSequence(const uno::Sequence <beans::PropertyV
else if (sName == SC_POSITIONLEFT) else if (sName == SC_POSITIONLEFT)
{ {
aSettings[i].Value >>= nTemp32; aSettings[i].Value >>= nTemp32;
nPosX[SC_SPLIT_LEFT] = bIsTiledRendering ? 0 : nPosX[SC_SPLIT_LEFT] = SanitizeCol( static_cast<SCCOL>(nTemp32));
SanitizeCol( static_cast<SCCOL>(nTemp32));
} }
else if (sName == SC_POSITIONRIGHT) else if (sName == SC_POSITIONRIGHT)
{ {
aSettings[i].Value >>= nTemp32; aSettings[i].Value >>= nTemp32;
nPosX[SC_SPLIT_RIGHT] = bIsTiledRendering ? 0 : nPosX[SC_SPLIT_RIGHT] = SanitizeCol( static_cast<SCCOL>(nTemp32));
SanitizeCol( static_cast<SCCOL>(nTemp32));
} }
else if (sName == SC_POSITIONTOP) else if (sName == SC_POSITIONTOP)
{ {
aSettings[i].Value >>= nTemp32; aSettings[i].Value >>= nTemp32;
nPosY[SC_SPLIT_TOP] = bIsTiledRendering ? 0 : nPosY[SC_SPLIT_TOP] = SanitizeRow( static_cast<SCROW>(nTemp32));
SanitizeRow( static_cast<SCROW>(nTemp32));
} }
else if (sName == SC_POSITIONBOTTOM) else if (sName == SC_POSITIONBOTTOM)
{ {
aSettings[i].Value >>= nTemp32; aSettings[i].Value >>= nTemp32;
nPosY[SC_SPLIT_BOTTOM] = bIsTiledRendering ? 0 : nPosY[SC_SPLIT_BOTTOM] = SanitizeRow( static_cast<SCROW>(nTemp32));
SanitizeRow( static_cast<SCROW>(nTemp32));
} }
else if (sName == SC_ZOOMTYPE) else if (sName == SC_ZOOMTYPE)
{ {
...@@ -1291,6 +1286,16 @@ void ScViewData::ResetOldCursor() ...@@ -1291,6 +1286,16 @@ void ScViewData::ResetOldCursor()
pThisTab->mbOldCursorValid = false; pThisTab->mbOldCursorValid = false;
} }
SCCOL ScViewData::GetPosX( ScHSplitPos eWhich ) const
{
return comphelper::LibreOfficeKit::isActive() ? 0 : pThisTab->nPosX[eWhich];
}
SCROW ScViewData::GetPosY( ScVSplitPos eWhich ) const
{
return comphelper::LibreOfficeKit::isActive() ? 0 : pThisTab->nPosY[eWhich];
}
SCCOL ScViewData::GetCurXForTab( SCTAB nTabIndex ) const SCCOL ScViewData::GetCurXForTab( SCTAB nTabIndex ) const
{ {
if (!ValidTab(nTabIndex) || (nTabIndex >= static_cast<SCTAB>(maTabData.size()))) if (!ValidTab(nTabIndex) || (nTabIndex >= static_cast<SCTAB>(maTabData.size())))
......
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