summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@googlemail.com>2016-10-08 00:20:37 +0200
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2016-10-10 03:59:55 +0000
commit64c25f120cd96cb6c1c232cc86661d9927840851 (patch)
treea49e4af0ac6438cebb1e11822370050029beb9ce
parent04fc8935e1d83ae653ff2d7fde3db465e5aa635a (diff)
skip hidden rows/columns for spellchecking, tdf#99607
Change-Id: Ic84368f4bb70973c3c5f5293d852fc573c5f73f7 Reviewed-on: https://gerrit.libreoffice.org/29601 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com> (cherry picked from commit eadd75ef212b4dd1b43aeacb34c8dd3ab40df369) Reviewed-on: https://gerrit.libreoffice.org/29609
-rw-r--r--sc/source/ui/view/gridwin.cxx24
1 files changed, 22 insertions, 2 deletions
diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx
index 70c05c0feaca..1af4606a1c94 100644
--- a/sc/source/ui/view/gridwin.cxx
+++ b/sc/source/ui/view/gridwin.cxx
@@ -5526,11 +5526,31 @@ bool ScGridWindow::ContinueOnlineSpelling()
SCCOL nCol;
SCROW nRow;
ScRefCellValue* pCell = aIter.GetNext(nCol, nRow);
- while (pCell && nRow < mpSpellCheckCxt->maPos.mnRow)
+ SCROW nEndRow = 0;
+ bool bHidden = pDoc->RowHidden(nRow, nTab, nullptr, &nEndRow);
+ bool bSkip = pCell && (nRow < mpSpellCheckCxt->maPos.mnRow || bHidden);
+ while (bSkip)
+ {
pCell = aIter.GetNext(nCol, nRow);
+ if (nRow > nEndRow)
+ {
+ bHidden = pDoc->RowHidden(nRow, nTab, nullptr, &nEndRow);
+ }
+ bSkip = pCell && (nRow < mpSpellCheckCxt->maPos.mnRow || bHidden);
+ }
- while (pCell && nCol < mpSpellCheckCxt->maPos.mnCol)
+ SCCOL nEndCol = 0;
+ bHidden = pDoc->ColHidden(nCol, nTab, nullptr, &nEndCol);
+ bSkip = pCell && (nCol < mpSpellCheckCxt->maPos.mnCol || bHidden);
+ while (bSkip)
+ {
pCell = aIter.GetNext(nCol, nRow);
+ if (nCol > nEndCol)
+ {
+ bHidden = pDoc->ColHidden(nCol, nTab, nullptr, &nEndCol);
+ }
+ bSkip = pCell && (nCol < mpSpellCheckCxt->maPos.mnCol || bHidden);
+ }
std::unique_ptr<ScTabEditEngine> pEngine;