summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorAndrzej Hunt <andrzej@ahunt.org>2015-11-13 11:17:43 +0100
committerAndrzej Hunt <andrzej@ahunt.org>2015-11-13 11:35:03 +0100
commite77668eb1e7abe522493235dadfca08ca451ad99 (patch)
tree586fce73a072b913b4be5cdc3bf69ec605ffa87e /sc
parent0797610256c07966630880068ab94361c1c47bf0 (diff)
sc lok: during tiled rendering the cell-cursor is always visible
Change-Id: Ia802c19f5bfd2fe2e9909e3c611047c529a64200
Diffstat (limited to 'sc')
-rw-r--r--sc/source/ui/view/gridwin.cxx12
1 files changed, 5 insertions, 7 deletions
diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx
index 94b0be9c5cdd..e001e064e5cc 100644
--- a/sc/source/ui/view/gridwin.cxx
+++ b/sc/source/ui/view/gridwin.cxx
@@ -6010,7 +6010,9 @@ void ScGridWindow::UpdateCursorOverlay()
const ScPatternAttr* pPattern = pDoc->GetPattern(nX,nY,nTab);
- if (!maVisibleRange.isInside(nX, nY))
+ ScDrawLayer* pDrawLayer = pDoc->GetDrawLayer();
+
+ if (!pDrawLayer->isTiledRendering() && !maVisibleRange.isInside(nX, nY))
{
if (maVisibleRange.mnCol2 < nX || maVisibleRange.mnRow2 < nY)
return; // no further check needed, nothing visible
@@ -6029,13 +6031,11 @@ void ScGridWindow::UpdateCursorOverlay()
}
// don't show the cursor in overlapped cells
-
const ScMergeFlagAttr& rMergeFlag = static_cast<const ScMergeFlagAttr&>( pPattern->GetItem(ATTR_MERGE_FLAG) );
bool bOverlapped = rMergeFlag.IsOverlapped();
// left or above of the screen?
-
- bool bVis = ( nX>=pViewData->GetPosX(eHWhich) && nY>=pViewData->GetPosY(eVWhich) );
+ bool bVis = pDrawLayer->isTiledRendering() || ( nX>=pViewData->GetPosX(eHWhich) && nY>=pViewData->GetPosY(eVWhich) );
if (!bVis)
{
SCCOL nEndX = nX;
@@ -6065,7 +6065,7 @@ void ScGridWindow::UpdateCursorOverlay()
}
// in the tiled rendering case, don't limit to the screen size
- if (bMaybeVisible)
+ if (bMaybeVisible || pDrawLayer->isTiledRendering())
{
long nSizeXPix;
long nSizeYPix;
@@ -6108,8 +6108,6 @@ void ScGridWindow::UpdateCursorOverlay()
}
}
- ScDrawLayer* pDrawLayer = pDoc->GetDrawLayer();
-
if ( !aPixelRects.empty() )
{
if (pDrawLayer->isTiledRendering()) {