Kaydet (Commit) e77668eb authored tarafından Andrzej Hunt's avatar Andrzej Hunt

sc lok: during tiled rendering the cell-cursor is always visible

Change-Id: Ia802c19f5bfd2fe2e9909e3c611047c529a64200
üst 07976102
...@@ -6010,7 +6010,9 @@ void ScGridWindow::UpdateCursorOverlay() ...@@ -6010,7 +6010,9 @@ void ScGridWindow::UpdateCursorOverlay()
const ScPatternAttr* pPattern = pDoc->GetPattern(nX,nY,nTab); 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) if (maVisibleRange.mnCol2 < nX || maVisibleRange.mnRow2 < nY)
return; // no further check needed, nothing visible return; // no further check needed, nothing visible
...@@ -6029,13 +6031,11 @@ void ScGridWindow::UpdateCursorOverlay() ...@@ -6029,13 +6031,11 @@ void ScGridWindow::UpdateCursorOverlay()
} }
// don't show the cursor in overlapped cells // don't show the cursor in overlapped cells
const ScMergeFlagAttr& rMergeFlag = static_cast<const ScMergeFlagAttr&>( pPattern->GetItem(ATTR_MERGE_FLAG) ); const ScMergeFlagAttr& rMergeFlag = static_cast<const ScMergeFlagAttr&>( pPattern->GetItem(ATTR_MERGE_FLAG) );
bool bOverlapped = rMergeFlag.IsOverlapped(); bool bOverlapped = rMergeFlag.IsOverlapped();
// left or above of the screen? // left or above of the screen?
bool bVis = pDrawLayer->isTiledRendering() || ( nX>=pViewData->GetPosX(eHWhich) && nY>=pViewData->GetPosY(eVWhich) );
bool bVis = ( nX>=pViewData->GetPosX(eHWhich) && nY>=pViewData->GetPosY(eVWhich) );
if (!bVis) if (!bVis)
{ {
SCCOL nEndX = nX; SCCOL nEndX = nX;
...@@ -6065,7 +6065,7 @@ void ScGridWindow::UpdateCursorOverlay() ...@@ -6065,7 +6065,7 @@ void ScGridWindow::UpdateCursorOverlay()
} }
// in the tiled rendering case, don't limit to the screen size // in the tiled rendering case, don't limit to the screen size
if (bMaybeVisible) if (bMaybeVisible || pDrawLayer->isTiledRendering())
{ {
long nSizeXPix; long nSizeXPix;
long nSizeYPix; long nSizeYPix;
...@@ -6108,8 +6108,6 @@ void ScGridWindow::UpdateCursorOverlay() ...@@ -6108,8 +6108,6 @@ void ScGridWindow::UpdateCursorOverlay()
} }
} }
ScDrawLayer* pDrawLayer = pDoc->GetDrawLayer();
if ( !aPixelRects.empty() ) if ( !aPixelRects.empty() )
{ {
if (pDrawLayer->isTiledRendering()) { if (pDrawLayer->isTiledRendering()) {
......
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